導航:首頁 > 編程語言 > python格式化有什麼用

python格式化有什麼用

發布時間:2022-05-10 01:45:35

python格式化輸出的理解怎麼樣

7.1. 格式化輸出
我們有兩種大相徑庭地輸出值方法:表達式語句 和 print() 函數(第三種訪求是使用文件對象的 write() 方法,標准文件輸出可以參考 sys.stdout,詳細內容參見庫參考手冊)。
通常,你想要對輸出做更多的格式控制,而不是簡單的列印使用空格分隔的值。有兩種方法可以格式化你的輸出:第一種方法是由你自己處理整個字元串,通過使用字元串切割和連接操作可以創建任何你想要的輸出形式。string 類型包含一些將字元串填充到指定列寬度的有用操作,隨後就會討論這些。第二種方法是使用 str.format() 方法。
標准模塊 string 包括了一些操作,將字元串填充入給定列時,這些操作很有用。隨後我們會討論這部分內容。第二種方法是使用 Template 方法。
當然,還有一個問題,如何將值轉化為字元串?很幸運,Python 有辦法將任意值轉為字元串:將它傳入 repr() 或 str() 函數。
函數 str() 用於將值轉化為適於人閱讀的形式,而 repr() 轉化為供解釋器讀取的形式(如果沒有等價的語法,則會發生 SyntaxError 異常)某對象沒有適於人閱讀的解釋形式的話,str() 會返回與 repr() 等同的值。很多類型,諸如數值或鏈表、字典這樣的結構,針對各函數都有著統一的解讀方式。字元串和浮點數,有著獨特的解讀方式。

Ⅱ python 格式化字元串有什麼用

格式 描述
%% 百分號標記 #就是輸出一個%
%c 字元及其ASCII碼
%s 字元串
%d 有符號整數(十進制)
%u 無符號整數(十進制)
%o 無符號整數(八進制)
%x 無符號整數(十六進制)
%X 無符號整數(十六進制大寫字元)
%e 浮點數字(科學計數法)
%E 浮點數字(科學計數法,用E代替e)
%f 浮點數字(用小數點符號)
%g 浮點數字(根據值的大小採用%e或%f)
%G 浮點數字(類似於%g)
%p 指針(用十六進制列印值的內存地址)
%n 存儲輸出字元的數量放進參數列表的下一個變數中

%格式化符也可用於字典,可用%(name)引用字典中的元素進行格式化輸出。

負號指時數字應該是左對齊的,「0」告訴Python用前導0填充數字,正號指時數字總是顯示它的正負(+,-)符號,即使數字是正數也不例外。

可指定最小的欄位寬度,如:"%5d" % 2。也可用句點符指定附加的精度,如:"%.3d" % 3。

e.g.
# 例:數字格式化
nYear = 2018
nMonth = 8
nDay = 18
# 格式化日期 %02d數字轉成兩位整型缺位填0
print '%04d-%02d-%02d'%(nYear,nMonth,nDay)
>> 2018-08-18 # 輸出結果

fValue = 8.123
print '%06.2f'%fValue # 保留寬度為6的2位小數浮點型
>> 008.12 # 輸出

print '%d'%10 # 輸出十進制
>> 10
print '%o'%10 # 輸出八進制
>> 12
print '%02x'%10 # 輸出兩位十六進制,字母小寫空缺補零
>> 0a
print '%04X'%10 # 輸出四位十六進制,字母大寫空缺補零
>> 000A
print '%.2e'%1.2888 # 以科學計數法輸出浮點型保留2位小數
>> 1.29e+00

格式化操作符輔助指令
符號 作用
* 定義寬度或者小數點精度
- 用做左對齊
+ 在正數前面顯示加號( + )
在正數前面顯示空格
# 在八進制數前面顯示零('0'),在十六進制前面顯示'0x'或者'0X'(取決於
用的是'x'還是'X')
0 顯示的數字前面填充『0』而不是默認的空格
% '%%'輸出一個單一的'%'
(var) 映射變數(字典參數)
m.n m 是顯示的最小總寬度,n 是小數點後的位數(如果可用的話)

Ⅲ python格式化字元有什麼用

格式 描述
%% 百分號標記 #就是輸出一個%
%c 字元及其ASCII碼
%s 字元串
%d 有符號整數(十進制)
%u 無符號整數(十進制)
%o 無符號整數(八進制)
%x 無符號整數(十六進制)
%X 無符號整數(十六進制大寫字元)
%e 浮點數字(科學計數法)
%E 浮點數字(科學計數法,用E代替e)
%f 浮點數字(用小數點符號)
%g 浮點數字(根據值的大小採用%e或%f)
%G 浮點數字(類似於%g)
%p 指針(用十六進制列印值的內存地址)
%n 存儲輸出字元的數量放進參數列表的下一個變數中

%格式化符也可用於字典,可用%(name)引用字典中的元素進行格式化輸出。

負號指時數字應該是左對齊的,「0」告訴Python用前導0填充數字,正號指時數字總是顯示它的正負(+,-)符號,即使數字是正數也不例外。

可指定最小的欄位寬度,如:"%5d" % 2。也可用句點符指定附加的精度,如:"%.3d" % 3。

e.g.
# 例:數字格式化
nYear = 2018
nMonth = 8
nDay = 18
# 格式化日期 %02d數字轉成兩位整型缺位填0
print '%04d-%02d-%02d'%(nYear,nMonth,nDay)
>> 2018-08-18 # 輸出結果

fValue = 8.123
print '%06.2f'%fValue # 保留寬度為6的2位小數浮點型
>> 008.12 # 輸出

print '%d'%10 # 輸出十進制
>> 10
print '%o'%10 # 輸出八進制
>> 12
print '%02x'%10 # 輸出兩位十六進制,字母小寫空缺補零
>> 0a
print '%04X'%10 # 輸出四位十六進制,字母大寫空缺補零
>> 000A
print '%.2e'%1.2888 # 以科學計數法輸出浮點型保留2位小數
>> 1.29e+00

格式化操作符輔助指令
符號 作用
* 定義寬度或者小數點精度
- 用做左對齊
+ 在正數前面顯示加號( + )
<sp> 在正數前面顯示空格
# 在八進制數前面顯示零('0'),在十六進制前面顯示'0x'或者'0X'(取決於
用的是'x'還是'X')
0 顯示的數字前面填充『0』而不是默認的空格
% '%%'輸出一個單一的'%'
(var) 映射變數(字典參數)
m.n m 是顯示的最小總寬度,n 是小數點後的位數(如果可用的話)

Ⅳ Python中的format()函數有什麼作用

常見於字元串格式化。
比如 print("第{0}天".format(d))
會列印"第5天"

Ⅳ python中的格式化到底是干什麼的有什麼用啊

那個模塊? 字元串的format還是標准輸出的format,標准輸出的format基本跟c的printf一樣,字元串的也是佔位符替換 作用就是使輸出或者生成的字元串好看啊

Ⅵ Python什麼時候需要用格式化輸出

格式化主要針對變數,比如:

Ⅶ python 為什麼要格式化字元串

在python中也有類似於c中的printf()的格式輸出標記。在python中格式化輸出字元串使用的是%運算符,通用的形式為
格式標記字元串 % 要輸出的值組
其中,左邊部分的」格式標記字元串「可以完全和c中的一致。右邊的'值組'如果有兩個及以上的值則需要用小括弧括起來,中間用短號隔開。重點來看左邊的部分。左邊部分的最簡單形式為:
%cdoe
其中的code有多種,不過由於在python中,所有東西都可以轉換成string類型,因此,如果沒有什麼特殊需求完全可以全部使用』%s『來標記。比如:
'%s %s %s' % (1, 2.3, ['one', 'two', 'three'])
它的輸出為'1 2.3 ['one', 'two', 'three']',就是按照%左邊的標記輸出的。雖然第一個和第二值不是string類型,一樣沒有問題。在這個過程中,當電腦發現第一個值不是%s時,會先調用整型數的函數,把第一個值也就是1轉成string類型,然後再調用str()函數來輸出。前面說過還有一個repr()函數,如果要用這個函數,可以用%r來標記。除了%s外,還有很多類似的code:
整型數:%d
無符號整型數:%u
八進制:%o
十六進制:%x %X
浮點數:%f
科學記數法: %e %E
根據數值的不同自動選擇%e或%f: %g
根據數值的不同自動選擇%E或%f: %G
就跟前面說用\進行轉義一樣,這里用%作為格式標記的標識,也有一個%本身應該如何輸出的問題。如果要在」格式標記字元串「中輸出%本身,可以用%%來表示。
上面說的只是格式標記的最簡間的形式,來看復雜一點的:
『%6.2f』 % 1.235
在這種形式中,在f的前面出現了一個類似小數的6.2它表示的意思是,總共輸出的長度為6個字元,其中小數2位。還有更復雜的:
『%06.2f』 % 1.235
在6的前面多了一個0,表示如果輸出的位數不足6位就用0補足6位。這一行的輸出為『001.24』,可以看到小數也佔用一位。類似於這里0這樣的標記還有-、+。其中,-表示左對齊,+表示在正數前面也標上+號,默認是不加的。最後來看最復雜的形式:
『%(name)s:%(score)06.1f』 %{'score':9.5, 'name':'newsim'}
這種形式只用在要輸出的內容為dictionary(一種python的數據類型)時,小括弧中的(name)和(score)對應於後面的鍵值對中的鍵。前面的例子可以看到,」格式標記字元串「中標記的順序和"要輸出的值組"中的值是一一對應的,有順序,一對一,二對二。而在這種形式中,則不是,每個格式標記對應哪個值由小括弧中的鍵來指定。這行代碼的輸出為:'newsim:0009.5'。

有時候在%6.2f這種形式中,6和2也不能事先指定,會在程序運行過程中再產生,那怎麼輸入呢,當然不能用%%d.%df或%d.%d%f。可以用%*.*f的形式,當然在後面的」要輸出的值組「中包含那兩個*的值。比如:'%*.*f' % (6, 2, 2.345)就相當於'%6.2f' % 2.345。
這是這本書到此為止看起來最復雜的內容。不過如果記不住,或不想那麼耐煩,完全可以全部用%s代替,或者用多個"+"來構造類似的輸出字元串。這里的%真有點除法的味道,怪不得設計者會選擇用%這個除號。

象C 中的sprintf函數一樣,可以用「%」來格式化字元串
Table 3.1. 字元串格式化代碼
格式 描述
%% 百分號標記
%c 字元及其ASCII碼
%s 字元串
%d 有符號整數(十進制)
%u 無符號整數(十進制)
%o 無符號整數(八進制)
%x 無符號整數(十六進制)
%X 無符號整數(十六進制大寫字元)
%e 浮點數字(科學計數法)
%E 浮點數字(科學計數法,用E代替e)
%f 浮點數字(用小數點符號)
%g 浮點數字(根據值的大小採用%e或%f)
%G 浮點數字(類似於%g)
%p 指針(用十六進制列印值的內存地址)
%n 存儲輸出字元的數量放進參數列表的下一個變數中

Ⅷ python格式化輸出,為什麼要用

python一共有兩種格式化輸出語法,
一種是類似於C語言printf的方式,稱為 Formatting Expression
>>> '%s %d-%d' % ('hello', 7, 1)
'hello 7-1'
另一種是類似於C#的方式,稱為String Formatting Method Calls
>>> '{0} {1}:{2}'.format('hello', '1', '7')
'hello 1:7'
第一種方式可以指定浮點數的精度,例如
>>> '%.3f' % 1.234567869
'1.235'

Ⅸ python字元串格式化什麼意思

python字元串格式化的意思就是用format函數格式化字元串的用法。

用法:它通過{}和:來代替傳統%方式。

1、使用位置參數

要點:從以下例子可以看出位置參數不受順序約束,且可以為{},只要format里有相對應的參數值即可,參數索引從0開,傳入位置參數列表可用*列表

>>>li=['hoho',18]
>>>'mynameis{},age{}'.format('hoho',18)
'mynameishoho,age18'
>>>'mynameis{1},age{0}'.format(10,'hoho')
'mynameishoho,age10'
>>>'mynameis{1},age{0}{1}'.format(10,'hoho')
'mynameishoho,age10hoho'
>>>'mynameis{},age{}'.format(*li)
'mynameishoho,age18'

2、使用關鍵字參數

要點:關鍵字參數值要對得上,可用字典當關鍵字參數傳入值,字典前加**即可

>>>hash={'name':'hoho','age':18}
>>>'mynameis{name},ageis{age}'.format(name='hoho',age=19)
'mynameishoho,ageis19'
>>>'mynameis{name},ageis{age}'.format(**hash)
'mynameishoho,ageis18'

3、填充與格式化

:[填充字元][對齊方式 <^>][寬度]

>>>'{0:*>10}'.format(10)##右對齊
'********10'
>>>'{0:*<10}'.format(10)##左對齊
'10********'
>>>'{0:*^10}'.format(10)##居中對齊
'****10****'

4、精度與進制

>>>'{0:.2f}'.format(1/3)
'0.33'
>>>'{0:b}'.format(10)#二進制
'1010'
>>>'{0:o}'.format(10)#八進制
'12'
>>>'{0:x}'.format(10)#16進制
'a'
>>>'{:,}'.format(12369132698)#千分位格式化
'12,369,132,698'

5、使用索引

>>>li
['hoho',18]
>>>'nameis{0[0]}ageis{0[1]}'.format(li)
'nameishohoageis18

Ⅹ format在python中的用法是什麼

常見於字元串格式化。

比如 print("第{0}天".format(d))。會列印"第5天"。

python3的format函數中s表示格式化字元串類型數據。{:>15s}表示右對齊15個字元,左側空白默認用空格填充。{:<8.2f}表示左對齊加小數點一共8位的浮點型小數,保留小數點後兩位。

{:>15s}:{:<8.2f}中間的冒號,就是分隔兩個數據的分隔符。

Python

是完全面向對象的語言。函數、模塊、數字、字元串都是對象。並且完全支持繼承、重載、派生、多繼承,有益於增強源代碼的復用性。Python支持重載運算符和動態類型。相對於Lisp這種傳統的函數式編程語言,Python對函數式設計只提供了有限的支持。有兩個標准庫(functools, itertools)提供了Haskell和Standard ML中久經考驗的函數式程序設計工具。

閱讀全文

與python格式化有什麼用相關的資料

熱點內容
天正建築批量刪除命令 瀏覽:94
cad最下面的一排命令都什麼意思 瀏覽:456
pythonimportcpp 瀏覽:850
W10的系統怎麼給U盤加密 瀏覽:370
華為手機代碼編程教學入門 瀏覽:762
和彩雲沒會員怎樣解壓 瀏覽:634
androidimageview保存 瀏覽:387
新買店鋪什麼伺服器 瀏覽:883
文件夾能直接刻錄嗎 瀏覽:493
androidxmpp刪除好友 瀏覽:969
javac哪個前景好 瀏覽:427
中華英才網app為什麼不能搜索了 瀏覽:660
伺服器域名是什麼意思 瀏覽:52
Linux導出mysql命令 瀏覽:159
無詐建鄴是什麼app 瀏覽:228
python中的雙色球 瀏覽:167
python解釋器里如何換行 瀏覽:412
python編寫格式 瀏覽:576
用python做出來的軟體 瀏覽:469
伺服器指示燈代表什麼 瀏覽:702