格式化輸出
字符串格式化輸出%s的強大
不僅可以格式化輸出str,還可以格式化輸出整數和浮點數。
age = 18
print("明年我%s歲" %(age+1))#明年我19歲
浮點數保留n位小數
浮點數默認保留的是6位小數。
%.2f
表示小數保留兩位有效長度。
weight = 78.987
print("我的體重爲%.2f"%weight)#我的體重爲78.99
整數格式化空缺補位
%03d
表示保留三位整數,不足以0補全,超出則原樣輸出。
stu_id = 1
print("我的學號是%03d" %stu_id)#我的學號是001
f-格式化字符串
格式化字符串除了%s,還可以寫爲f{表達式}
name = "Tom"
age = 18
print(f"我的名字是{name},今年{age}歲了")
f-格式化字符串是Python3.6中新增的格式化方法。該方法更簡單易讀。
轉義字符
- \n:換行。
- \t:製表符,一個tab鍵(4個空格)的距離。
print("hello\npython")
print("\tabcd")
print結束符
想一想,爲什麼兩個print會換行輸出?
print('輸出的內容',end="\n")
在Python中,print(),默認自帶end = "\n"這個換行結束符,所以導致每兩個print直接會換行顯示,用戶可以按需求更改結束符。
print("hello",end='---')
print("python")
input輸入
1.遇到input,等待用戶輸入
2.接收輸入的值,存入變量中
3.input接收到的數據類型都是字符串
password = input("請輸入您的密碼")
print(f"您輸入的密碼是{password},它的數據類型是{type(password)}")
# 請輸入您的密碼424
# 您輸入的密碼是424,它的數據類型是<class 'str'>
數據類型轉換
轉換數據類型的函數:
函數 | 說明 |
---|---|
int(x [,base ]) | 將x轉換爲一個整數 |
float(x ) | 將x轉換爲一個浮點數 |
complex(real [,imag ]) | 創建一個複數, real爲實部, imag爲虛部 |
str(x ) | 將對象 x 轉換爲字符串 |
repr(x ) | 將對象 x 轉換爲表達式字符串 |
eval(str ) | 用來計算在字符串中的有效Python表達式,並返回⼀一個對象 |
tuple(s ) | 將序列列 s 轉換爲一個元組 |
list(s ) | 將序列列 s 轉換爲一個列表 |
chr(x ) | 將一個整數轉換爲一個Unicode字符 |
ord(x ) | 將一個字符轉換爲它的ASCII整數值 |
hex(x ) | 將一個整數轉換爲一個十六進制字符串 |
oct(x ) | 將一個整數轉換爲一個八進制字符串 |
bin(x ) | 將一個整數轉換爲一個二進制字符串 |
# 1. float() -- 將數據轉換成浮點型
num1 = 1
str1 = '10'
print(type(float(num1))) # float
print(float(num1)) # 1.0
print(float(str1)) # 10.0
# 2. str() -- 將數據轉換成字符串型
print(type(str(num1))) # str
# 3. tuple() -- 將一個序列轉換成元組
list1 = [10, 20, 30]
print(tuple(list1))#(10, 20, 30)
# 4. list() -- 將一個序列轉換成列表
t1 = (100, 200, 300)
print(list(t1))#[100, 200, 300]
# 5. eval() -- 計算在字符串中的有效Python表達式,並返回一個對象
#把字符串中的數據轉換成它原本的類型
str2 = '1'
str3 = '1.1'
str4 = '(1000, 2000, 3000)'
str5 = '[1000, 2000, 3000]'
print(type(eval(str2)))#int
print(type(eval(str3)))#float
print(type(eval(str4)))#tuple
print(type(eval(str5)))#list
總結:
轉換數據類型常用的函數:
int() 轉換成整型
float() 轉換成浮點型
str() 轉換成字符串
list() 轉換成列表
tuple() 轉換成元組
eval() 轉換成它原本的類型
PyCharm交互式解釋器
在PyCharm軟件的下方,鼠標單擊下方的Python Console,即可進入到PyCharm交互式解釋器。
運算符
print(9/2) #4.5
print(9//2) #4
- 多變量賦值
Inum1,Fnum,SNUm = 10,0.6,"hello"
- 多變量賦相同值
a = b = c = 199
【注意點】
以下代碼是先算等號右邊1+2,然後再乘以d
即先算複合賦值運算符右邊的表達式,再計算複合賦值運算。
d = 10
d *= 1 + 2
print(d) #結果爲30
a = 1
b = 2
c = 3
print((a < b) and (b < c)) # True 加小括號是爲了提高可讀性,避免歧義
print((a > b) and (b < c)) # False
print((a > b) or (b < c)) # True
print(not (a > b)) # True
*拓展(import)
數字之間的邏輯運算
a = 0
b = 1
c = 2
# and運算符,只要有一個值爲0,則結果爲0,否則結果爲最後一個非0數字
print(a and b) # 0
print(b and a) # 0
print(a and c) # 0
print(c and a) # 0
print(b and c) # 2
print(c and b) # 1
# or運算符,只有所有值爲0結果才爲0,否則結果爲第一個非0數字
print(a or b) # 1
print(a or c) # 2
print(b or c) # 1
可以這樣理解,0代表假,在and裏面只要有一個0,結果就爲0,否則結果爲最後一個非0數字。(and運算符必須讀完所有的表達式才能判定真假)
在or裏,只有全部值爲0,結果才爲0,否則結果是第一個非0數字。(or運算符爲了提高效率,只要在沒有讀完所有表達式時出現一個0,後面的不再繼續判斷,直接返回0)
完