4.從輸入輸出到基本運算符的學習

来源:https://www.cnblogs.com/csfy0524/p/18389491
-Advertisement-
Play Games

原文地址https://blog.fanscore.cn/a/61/ 1. wssh 1.1 開發背景 公司內部的發佈系統提供一個連接到k8s pod的web終端,可以在網頁中連接到k8s pod內。實現原理大概為通過websocket協議代理了k8s pod ssh,然後在前端通過xterm.js ...


主要是輸入輸出的內容

1.互動式輸入
2.格式化輸出
    1 占位符輸出
    2 format輸出
    3 f-string輸出
3.基本運算符
    1.算術運算符
    2.比較運算符
    3.賦值運算符
    4.邏輯運算符
    5.身份運算符
4.賦值方法
    1.鏈式賦值
    2.交叉賦值
5.解壓縮
6.作業

1 互動式輸入

這裡主要講的是與input()函數的交互,其實交互的意思就是可以讓用戶個人來提供輸入信息

name = input("name<<<")
age = input('age<<<')
height = input('height<<<')
print("my name is:"+name+", my age is:"+age+", my height is"+height+'.')
name<<<xiaocao
age<<<22
height<<<170
my name is:xiaocao, my age is:22, my height is170.
print("my name is:"+name+", my age is:"+age+", my height is"+height+'.')
print('*'*100)
print(type(name))
print(type(age))
print(type(height))
my name is:xiaocao, my age is:22, my height is170.
****************************************************************************************************
<class 'str'>
<class 'str'>
<class 'str'>

這裡主要註意input的輸出類型為str,可以直接使用在input前面增加int,float進行數據類型轉換

print(type(int(age)))
<class 'int'>

2 格式化輸出

這裡三種占位符,format和f-string

還是用上面的例子來打比方

2.1 占位符

name = input("name<<<")
age = input('age<<<')
height = input('height<<<')
print("my name is %s, my age is %s, my height is %s."%(name,age,height))
name<<<xiaocao
age<<<18
height<<<170
my name is xiaocao, my age is 18, my height is 170.
name = input("name<<<")
age = int(input('age<<<'))
height = int(input('height<<<'))
print("my name is %s, my age is %d, my height is %d."%(name,age,height))
name<<<xiaocao
age<<<18
height<<<170
my name is xiaocao, my age is 18, my height is 170.

%d占位符表示的是數字,如果是字元串類型則會報錯

2.2 format形式

這個就是將占位符更換成大括弧了

與占位符的區別:可以調整順序

print("my name is {}, my age is {}, my height is {}.".format(name,age,height))
print("my age is {1}, my name is {0}, my height is {2}.".format(name,age,height))
print("my name is {}, my age is {}, my height is {:.2f}.".format(name,age,height))
my name is xiaocao, my age is 18, my height is 170.
my age is 18, my name is xiaocao, my height is 170.
my name is xiaocao, my age is 18, my height is 170.00.

以前:format的形式好難呀,看到就頭疼

現在:?怎麼可以這麼清晰,而且還可以用markdown來寫文檔了

2.3 f-string的形式

哇,這個簡直就是絕,直接在大括弧內部添加內容

name = input("name<<<")
age = input('age<<<')
height = input('height<<<')
print(f"my name is {name}, my age is {age}, my height is {height}.")
name<<<ciaocao
age<<<18
height<<<170
my name is ciaocao, my age is 18, my height is 170.
print(f"my name is {name}, my age is {int(age)+1}, my height is {height * 10}.")
my name is ciaocao, my age is 19, my height is 170170170170170170170170170170.
print(f"my name is {name}, my age is {age+1 :.2f}, my height is {height * 10}.")
---------------------------------------------------------------------------

TypeError                                 Traceback (most recent call last)

Cell In[15], line 1
----> 1 print(f"my name is {name}, my age is {age+1 :.2f}, my height is {height * 10}.")


TypeError: can only concatenate str (not "int") to str
print(f"my name is {name}, my age is {int(age)+1 :.2f}, my height is {height * 10}.")
my name is ciaocao, my age is 19.00, my height is 170170170170170170170170170170.

雖然這個例子有些不合理吧,但是表達的意思倒是聽清楚的

哈哈哈哈哈哈哈哈哈哈哈哈

保留報錯的原因,是因為這個很經典,忘記將其轉換為數字類型報錯啦

3 基本運算符

3.1 算術運算符

顧名思義,用於計算數值間的值的運算符

1+2
3
1-2
-1
1/2
0.5
1//2
0
1%2
1

3.2 比較運算符

用於比較數值大小用的

1>2
False
2>1
True
7>=2
True
7<=2
False
8==8
True
1 != 2
True

3.3 賦值運算符

就是將數值賦值給一個變數

y =5
print(y)
5

3.4 邏輯運算符

三種形式 and or not

1>1 and 1>2
False
1>1 or 1<2
True
#0表示的就是錯的意思
not 0
True

3.5 身份運算符

一般就是比較兩個id是否相同,用 is 來表示

x = 300
y = 300
print(x == y)
print(id(x)==id(y))
print (x is y)
True
False
False

4 賦值方式

這一塊主要說明這些方法較一些C語言而言要簡單

鏈式賦值

交叉賦值

4.1 鏈式賦值

這個好理解,跟一條鏈子一樣,左邊有幾個變數右邊就有幾個數值

#這樣會很麻煩
x = 10
y = 10
z = 10
print(x,y,z)
a ,b =10,20
print(a,b)
10 10 10
10 20

4.2 交叉賦值

這個就是說白了,更換變數

a = 10
b = 20
print(a,b)
10 20
a = 10
b = 20
c = a
a = b
b = c
print(a,b)
20 10
a,b =b,a
print(a,b)
10 20

5 解壓縮

解壓縮的目的就是在列表裡面中間不要的信息過多,需要進行忽略,只留下對我們而言重要的信息

方法1:日常使用過程,如果想給列表裡的每個值進行出來,則可以使用

hobby = ['piao','666']
x ,y =hobby
print(x,y)
piao 666

如果取出來有我們不想要的值,則可以用下劃線來代替

hobby_list = ['piao','666',2333,999,'handsome']
_,hobby1,_,_,hobby2 = hobby_list
print(hobby1,hobby2)
666 handsome

如果在使用過程中取中間兩個數,其他數字進行省略可以用星號加下劃線

hobby_list = ['piao','666',2333,999,'handsome','read','run','music','swimming','football','basketball','baterminten']
_,hobby1,_,hobby2,*_ = hobby_list
print(hobby1,hobby2)
666 999

6 作業

6.1 作業1

用三種格式化方式進行輸出

name = 'xiaocao'
height = 180
weight = 100
print("My name is %s, my height is %d, my weight is %d"%(name,height,weight))
print("My name is {}, my height is {}, my weight is {}".format(name,height,weight))
print(f"My name is {name}, my height is {int(height)}, my weight is {weight}")
My name is xiaocao, my height is 180, my weight is 100
My name is xiaocao, my height is 180, my weight is 100
My name is xiaocao, my height is 180, my weight is 100

6.2 一行代碼實現交互

x = 10

y = 10

z = 10

x,y,z =10,10,10
print(x,y,z)
10 10 10

6.3 交換數值

x = 10
y = 10

x = 10
y = 20
x,y =y,x
print(x,y)
20 10

6.4 取出想要的愛好

hobby_list = ['read','run','music','code']

hobby_list = ['read','run','music','code']
print(hobby_list[1:3])
_,hobby1,hobby2,_ = hobby_list
print(hobby1,hobby2)
['run', 'music']
run music

總結

1.首先是markdown語法的學習,成功開始開啟我的博客生涯
2.關於電腦的系統,有了一個更清晰的認識
3.使用jupyter開始寫代碼
4.常量和變數的定義,記憶體的存儲方式,數據類型
    1.記憶體存儲會計數,有的id會相同有的不會
    2.數字類型(整數和浮點數),字元串類型,列表類型,字典類型,布爾類型
5.關於編程的輸入輸出以及基本運算符
    1.互動式輸入,即可以讓用戶看到,用input函數
    2.輸出三種類型,占位符,format和f-string,掌握的是f-string
    3.基本運算符五種,算數,比較,賦值,邏輯和地址
6.數值賦值的兩種方式:鏈式和交叉
7.解壓縮,我所掌握的一個點就是下劃線在這裡是表示省略內部的一些數據的意思


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 寫在前面 1447 字 | 感觸 | 見聞 | 孩子 | 童真 | 天性 正文 晚上。跳舞。 老師有很多學生,幾乎都念小學,大的不過五年級。小孩子。 今晚只來了一個。其他的孩子據說都在寫作業。 這幾天老師都打算回歸街舞本源,去街上跳舞,於是讓我們大包小包拿東西。 音箱、地膠、小型探照燈,水杯什麼的。 ...
  • 概述 租約機制指在租約期限內,擁有租約的節點有權利操作一些預設好的對象,具體如下 租約是由授權者授予的一段時間內的承諾 授權者一旦發出租約,則無論接受方是否收到,也無論後續接收方處於何種狀態,只要租約不過期,授權者就得遵守承諾,按承諾的時間和內容執行。 接收方在有效期內可以使用授權者的租約,如果租約 ...
  • 單欄位和多欄位重寫hashcode 在 Java 中,重寫 hashCode 方法的場景通常與對象的哈希值計算有關,特別是在使用哈希表(如 HashMap, HashSet 等)時。下麵是你提供的兩種 hashCode 實現的具體使用場景分析: 1. 第一種實現 @Override public b ...
  • OpenCV(Open Source Computer Vision Library)是一個開源的電腦視覺和機器學習軟體庫,旨在提供一個跨平臺的、易於使用的、快速執行的電腦視覺介面。如果只是簡單的使用,其實不必要像筆者這樣使用源代碼進行構建,直接使用官方提供的二進位安裝包即可。一般來說,需要從源 ...
  • 寫在前面 4002 字 | 陪伴 | 親密關係 | 患難與共 《理想雪》系列故事均為架空世界觀,所有人名、地名等與現實世界無任何關聯。 該系列只且僅只為了說明,小說作者在該情境下會誕生的想法和採取的行動,以及背後的世界觀、價值觀和人生觀。因此將具有強烈的個人風格。 未經授權,禁止轉載。僅供小範圍內閱 ...
  • 帶箭頭的直線就是有方向的直線,既可以用來表示矢量,也可以用來標記某個關鍵位置。manim中提供了4種常用的帶箭頭的直線模塊: Arrow:單箭頭的直線 DoubleArrow:雙箭頭的直線 LabeledArrow:帶標簽的直線 Vector:向量 其中,DoubleArrow,LabeledArr ...
  • 六,Spring Boot 容器中 Lombok 插件的詳細使用,簡化配置,提高開發效率 @目錄六,Spring Boot 容器中 Lombok 插件的詳細使用,簡化配置,提高開發效率1. Lombok 介紹2. Lombok 常用註解2.1 @ToString2.2 @Setter2.3 @Dat ...
  • Springboot黑馬點評(3)——優惠券秒殺 【還剩Redisson的最後兩節沒測試 後續補上】 另外,後期單獨整理一份關於分散式鎖筆記 1 優惠券秒殺實現 1.1 用戶-優惠券訂單設計 1.1.1 全局ID生成器 使用資料庫自增ID作為訂單ID存在問題 1.1.2 考慮全局唯一ID生成邏輯 時 ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...