攝影或3C

Python印出(print)字串與字串的對齊{:8.2f}預設靠右, {:8.2f}靠右,{:^8.2f}置中,{:=^10s}”.format(“傳說中的分隔線”) ; print(f”{s:=<10}")

Python印出字串與字串的對齊

num = 70.8
print(“01-海洋佔了地球表面的%.2f百分比” % num)
print(“02-海洋佔了地球表面的%.3f百分比” % num)
print(“03-海洋佔了地球表面的%.4f百分比” % num)

“””

三個  ”  或  ‘  為多行註解 

” “之後沒有.也沒有,直接%num,

有空格的話沒關係

百分比也不能用%,程式會混淆

需用%% 

print(“01-海洋佔了地球表面的%.2f”%num +”%” )

因為%剛好在句末,這樣可以

“””

print(04-海洋佔了地球表面的{:8.2f}%.format(num))
# {:8.2f} 是python語法,8個字元 小數點下2位 未指定預設靠右

print(“05-海洋佔了地球表面的|{:<8.2f}%|”.format(num))
# <靠左

print(“06-海洋佔了地球表面的|{:^8.2f}%|”.format(num))
# ^置中

print(“07-海洋佔了地球表面的|{:>8.2f}%|”.format(num))
# >靠右

print(海洋佔了地球表面{:8.2f}百分比.format(num))
print(海洋佔了地球表面{:<8.2f}百分比.format(num))
print(海洋佔了地球表面{:>8.2f}百分比.format(num))
print(海洋佔了地球表面{:^8.2f}百分比.format(num))

 

用Anaconda的Spyder

執行結果:

 

num=70.8
print(“03-海洋佔了地球表面的%.4f百分比”% num)
print(“03-海洋佔了地球表面的%.4f%%” % num)

執行結果:

 

num = 70.8
print(“01-海洋佔了地球表面的%8.2f百分比” % num)
print(“04-海洋佔了地球表面的{:8.2f}百分比”.format(num))
print(“01-海洋佔了地球表面的%.2f百分比” % num)
print(“04-海洋佔了地球表面的{:.2f}百分比”.format(num))
# 8.2f 改為 .2f 字元數自動調整到剛好

 

print(01-體積縮小{:.3f}%.format(33.45678))
print(02-體積縮小{:.4f}%.format(33.45678))
print(03-氮氣佔空氣體積{:.0f}%,氧氣佔{:.2f}%。 .format(78.08, 20.95))
print(04-氮氣佔空氣體積{0:.0f}%,氧氣佔{1:.2f}%。.format(78.08, 20.95))

print(“|{:}|{:^8}|{:5d}|”.format(12,34,56))

#{:5d} 5個字元,未指定預設靠右,d是數字格式

print(“{:=<5}“.format(“”))

# print(“{:<}“.format(“=”*5)) 效果相同,

# “=”印5次,靠左對齊

 

print(“{:=^40s}“.format(“傳說中的分隔線”))
print(“{:=^40s}”.format(“傳說中的分隔線”))

執行結果:

.format() 與 前綴f:

print(“{strr:=^40s}”.format(strr))

出現KeyError

原因是在使用 str.format() 方法时,

需要在括号内指定键和值。

在代码中,键是 'strr'

(作为字符串格式中的一部分),

但没有正确地传递这个键的值。

 

print(“氮氣佔空氣體積{:.0f}%,氧氣佔{:.2f}%”.format(78.08,20.95))
print(“氮氣佔空氣體積%.0f百分比,氧氣佔%.2f百分比”%(78.08,20.95))

#百分比無法用%,程式會混淆

執行結果:

 

print(“04-氮氣佔空氣體積{0:.0f}%,氧氣佔{1:.2f}%。”.format(78.08, 20.95))
print(“04-氮氣佔空氣體積{:.0f}%,氧氣佔{:.2f}%。”.format(78.08, 20.95))

num = 70.8
print(“04-海洋佔了地球表面的{:.2f}百分比”.format(num))
print(“04-海洋佔了地球表面的{:’^9.2f}百分比”.format(num))

#70.80有5個字元,置中,剩下9-5=4字元,以’填滿

執行結果:

 

print(“|{:}|{:^10}|{:10.2f}|”.format(12,34,56))
print(“|{:}|{:^10}|{:10d}|”.format(12,34,56))

執行結果:

 

print(“{:=<5}”.format(“”))
print(“{:<}”.format(“=”*5))
#都是印5次”=”,靠左

print(“{:<5}”.format(“=”))
#只有一個”=”靠左,共5字元

print(“{:>5}”.format(“=”))
#只有一個”=”靠右,共5字元

print(“{:^5}”.format(“=”))
#只有一個”=”置中,共5字元

print(“{:=^10s}”.format(“傳說中的分隔線”))
#”傳說中的分隔線”有7個字

# “=”在:之後

執行結果:

 

print(“{:=<10s}”.format(“傳說中的分隔線”))
#傳說中的分隔線有7個字,靠左對齊,共10字元
print(“{:=>10s}”.format(“傳說中的分隔線”))
print(“{:=^10s}”.format(“傳說中的分隔線”))

print(“{:*<10s}”.format(“傳說中的分隔線”))
#傳說中的分隔線有7個字,靠左對齊,共10字元
print(“{:*>10s}”.format(“傳說中的分隔線”))
print(“{:*^10s}”.format(“傳說中的分隔線”))

執行結果:

f-string 可以做到同樣的事情: 

{:} :的右邊放格式,如:10s .2f 

.format 跟前綴f 都一樣

前綴f將變數放在:左邊

若使用.format(變數)

:左邊則不放變數

前綴f顯然比.format()短得多

 

num=12
score=86
print(“座號:”+str(num)+”,成績:”+str(score))
print(座號:,num,,成績:,score)

執行結果:

 

id=17
name=”小李飛刀,例不虛發”
print(“姓名1:%s”%name)

#簡單架構是: print(“%s”%name)

print(“姓名2:%s” % name)
#” “之外 %name的空格不影響列印結果

print(“姓名3: %s” % name)
#” “內的姓名3:之後有一個空格

print(“姓名4: %s ” % name)
#” “內的姓名4:之後有一個空格

print(“姓名5:%s=>” % name)
print(“姓名6:%s-座號:%d”%(name,id))
# %s字串 %d數字

#簡單架構為: print(“%s %d”%(name,id))

print(“姓名7: %s-座號: %d”%(name,id))

#格式化字串 %s表字串(string)、%d表整數(digit)、%f表浮點數字(float)

推薦hahow線上學習python: https://igrape.net/30afN

儲蓄保險王

儲蓄險是板主最喜愛的儲蓄工具,最喜愛的投資理財工具則是ETF,最喜愛的省錢工具則是信用卡