1、%s
msg = '我叫%s,今年%s,性別%s' %('帥哥',18,'男')
print(msg) # 我叫帥哥,今年18,性別男
2、format
# 三種方式:
# 第一種:按順序接收參數
s1 = '我叫{},今年{},性別{}'.format('帥哥','18','男')
print(s1) # 我叫帥哥,今年18,性別男
# 第二種:按索引接收參數
s2 = '我叫{0},今年{1},性別{2},我依然叫{0}'.format('帥哥', '18', '男')
print(s2) # 我叫帥哥,今年18,性別男,我依然叫帥哥
# 第三種:按關鍵字接收參數
s3 = '我叫{name},今年{age},性別{sex}'.format(age='18', name='帥哥', sex='男')
print(s3) # 我叫帥哥,今年18,性別男
3、f-string
1、介紹
f-string(formatted string literals):格式化字符串常量,是Python3.6新引入的一種字符串格式化方法,使格式化字符串的操做更加簡便。
2、語法
f'xxx' 或 F'xxx' 且以大括號 {} 代表被替換的字段,{}裏面能夠是字符串或者表達式
三、簡單替換字符串:{'字符串'}
name = '小白'
msg = f'我叫{name},今年{18}歲,性別{"男"}'
print(msg) # 我叫小白,今年18歲,性別男
注意:若f使用的是單引號,那麼裏面的{}如果字符串則應該用雙引號,反之同樣
4、計算表達式:{表達式}
ret = f"1 add 2 is {1+2}"
print(ret) # 1 add 2 is 3
5、lambda表達式:{(lambda表達式) (參數)}
注意:
lambda表達式的 : 會被f-string誤認爲是表達式與格式描述符之間的分隔符,
爲避免歧義,須要將lambda表達式置於括號 () 內:
func = f"my_add result:{(lambda x,y:x+y) (1,2)}"
print(func) # my_add result:3
若不加括號則報錯:
func = f"my_add result:{lambda x,y:x+y (1,2)}"
print(func)
File "<fstring>", line 1
(lambda x,y)
^
SyntaxError: unexpected EOF while parsing
六、f-string用法很強大,這裏只是寫出了一些經常使用的方法,感興趣能夠本身去研究其餘用法
4、類型註解
Python是一門動態語言,變量以及函數的參數是不區分類型。好比咱們要實現一個數字相加的函數:
def my_add(x, y):
return x + y
可是這樣的壞處是,別人不知道你要作的是數字相加的函數,別人輸入字符串,同樣是能夠獲得字符串的拼接的
因而 Python 3 提供了一個新的特性:
類型註解:
def my_add(x:int, y:int) -> int:
return x + y
語法:
參數:類型 指定函數的參數類型
-> 類型 指定函數的返回值類型。
注意:Python 解釋器並不會由於這些註解而提供額外的校驗,
也就是說,這些類型註解加不加,對你的代碼來講沒有任何影響,我同樣能夠輸入字符串的。
只是這麼作的好處是:
1.讓別人看得更明白
2.當你輸入str和float 類型的參數時,雖然同樣不會報錯能夠得出結果,可是IDE工具會有高亮提示