Vincent
2022-02-05 15:25老師,問(wèn)下字符串占位的問(wèn)題,在歷史var的計(jì)算里面。之前沒(méi)搞明白, 第一張圖format里面,冒號(hào)代表什么意思,前面為什么不需要加其他內(nèi)容? 第二張圖為何要寫成0.2f,我看直接.2f就行,0代表了什么意思? 另外想問(wèn)下占位的問(wèn)題,比如數(shù)字,1.234,12.3456,我希望同時(shí)整數(shù)占3位,小數(shù)點(diǎn)也占3位,該怎么寫?
所屬:AQF > AAQF 視頻位置 相關(guān)試題
來(lái)源: 視頻位置 相關(guān)試題
1個(gè)回答
高志萍助教
2022-02-05 15:59
該回答已被題主采納
同學(xué)你好,
format方法下,占位符是{}, 冒號(hào)表示是對(duì)這個(gè)占位符中的數(shù)據(jù)的調(diào)整,.2表示的小數(shù)點(diǎn)后保留兩位
0.2和.2意思一樣,都是小數(shù)點(diǎn)后保留兩位
但是小數(shù)點(diǎn)前的數(shù)字是有意義的,表示的整個(gè)占位符的寬度。
比如100.22,這個(gè)數(shù)據(jù)的占符位寬度是6
8.22的寬度是4
如果不寫占位符寬度(也就是小數(shù)點(diǎn)前的數(shù)字,或者寫的數(shù)字小于6的話)
兩個(gè)數(shù)據(jù)的展現(xiàn)是下面這樣的:
100.22
8.22
這個(gè)展現(xiàn)形式不好看
而如果{:6.2f}或者%6.2f的話
就是:
100.22
8.22
這樣就右對(duì)齊了
-
追答
整數(shù)3位,小數(shù)點(diǎn)后3位,再加上小數(shù)點(diǎn),一共7位,
所以是7.3f(只要是大于7的話,就能右對(duì)齊,但是數(shù)字越大,那數(shù)字前的空格越大) -
追問(wèn)
老師,不好意思沒(méi)理解這句話:只要是大于7的話,就能右對(duì)齊,但是數(shù)字越大,那數(shù)字前的空格越大。我自己算了下,如果整數(shù)位的數(shù)字越多的話就無(wú)法對(duì)齊了。整數(shù)位的數(shù)字越大,空格應(yīng)該越少了吧。求再解釋,謝謝!
-
追答
同學(xué)你好,
7代表的是整個(gè)占位符的總共的寬度。
只要輸入的數(shù)字的寬度是小于7的話,那就能對(duì)齊
但是寬度越大,沒(méi)有數(shù)字的地方就用空格填充了
例子中,因?yàn)樽畲蟮臄?shù)字的寬度是9,所以要設(shè)置成9.3f(第一張圖)
這個(gè)時(shí)候,如果把寬度設(shè)為20的話,數(shù)字前會(huì)有11個(gè)空格(第二張圖)
