python基礎-09格式化輸出的三種主流方式

佔位符

程序中常常會有這樣場景:要求用戶輸入信息,而後打印成固定的格式python

好比要求用戶輸入用戶名和年齡,而後打印以下格式:My name is xxx,my age is xxx.code

很明顯,用逗號進行字符串拼接,只能把用戶輸入的名字和年齡放到末尾,沒法放到指定的xxx位置,並且數字也必須通過str(數字)的轉換才能與字符串進行拼接,很是之麻煩,咱們來試一試。orm

+方法(使用場景太少-->大多數狀況弟弟用法)

用逗號進行字符串拼接,只能把用戶輸入的名字和年齡放到末尾,沒法放到指定的xxx位置,並且數字也必須通過str(數字)的轉換才能與字符串進行拼接,很是之麻煩
代碼以下字符串

age = 18
print('My name is nash,my age is '+str(age))
# 輸出結果 ---> My name is xxx,my age is 18

多字符串 + 的使用方法string

name = 'nash'
age = 18
print('My name is '+name+' my age is '+str(age))
# 輸出結果 ---> My name is nick my age is 18

上面使用的方法越看越彆扭,越看越麻煩。這就須要用到佔位符,如:%s(針對全部數據類型)、%d(僅僅針對數字類型)--> 我的見解這用法時候 %s 走天下form

name = 'nash'
age = 18
print('my name is %s my age is %s' % (name, age))
# my name is nash my age is 18
age = 18
print('my age is %d' % age)
# my age is 18


format格式化

講真,很雞肋的格式化的方法,若是你須要使用這個,遇到多參數的時候,仍是須要在句子後面噼裏啪啦傳上一大堆參數。使用這個不如用佔位符或下面的f-String格式化。
ps:之前龜叔他們推薦用,我的以爲最好用第三種瞭如今class

name = 'nash'
age = 18
print("Hello, {}. You are {}.".format(name, age))
# Hello, nash. You are 19.
name = 'nash'
age = 18
print("Hello, {1}. You are {0} years old.".format(age, name))
# Hello, nash. You are 18 years old.
name = 'nash'
age = 18
print("Hello, {name}. You are {age} years old.".format(age=age, name=name))
# Hello, nash. You are 18 years old.


f-String格式化

比較佔位符的方式,python3.6版本新增了f-String格式化的方式,比較簡單易懂.推薦使用這種方式。變量

name = "nash"
age = 18
print(f"Hello, {name}. You are {age}.")
# Hello, nash. You are 19.

大寫的F也適用。數據類型

name = "nash"
age = 18
print(F"Hello, {name}. You are {age}.")
# 輸出結果
# Hello, nash. You are 18.

變量乘法後在進行格式化(即運算結束後,格式化爲最後一步)程序

age = 18
print(f'{age*2}')
# 輸出結果
# 36

秀個其餘地方看到的操做(內部是不會f影響外部的,而且還能夠進行浮點數的小數取值)

salary = 6.6666
print(f'{salary:.2f}')
6.67
相關文章
相關標籤/搜索