在本教程中,我們將借助示例了解 Python format() 函數。
format()
方法返回由格式說明符控製的給定值的格式化表示。
示例
value = 45
# format the integer to binary
binary_value = format(value, 'b')
print(binary_value)
# Output: 101101
format() 語法
它的語法是:
format(value[, format_spec])
參數:
format()
函數有兩個參數:
- value- 需要格式化的值
- format_spec- 值應如何格式化的規範。
格式說明符可以是以下格式:
[[fill]align][sign][#][0][width][,][.precision][type] where, the options are fill ::= any character align ::= "<" | ">" | "=" | "^" sign ::= "+" | "-" | " " width ::= integer precision ::= integer type ::= "b" | "c" | "d" | "e" | "E" | "f" | "F" | "g" | "G" | "n" | "o" | "s" | "x" | "X" | "%"
訪問這些鏈接以了解有關 format types 和 alignment 的更多信息。
返回:
format()
函數返回由格式說明符指定的給定值的格式化表示。
示例 1:使用 format() 的數字格式
# d, f and b are type
# integer
print(format(123, "d"))
# float arguments
print(format(123.4567898, "f"))
# binary format
print(format(12, "b"))
輸出
123 123.456790 1100
示例 2:帶有填充、對齊、符號、寬度、精度和類型的數字格式
# integer
print(format(1234, "*>+7,d"))
# float number
print(format(123.4567, "^-09.3f"))
輸出
*+1,234 0123.4570
在這裏,當格式化整數 1234
時,我們指定了格式化說明符 *>+7,d
。讓我們了解每個選項:
*
- 格式化後填充空格的填充字符>
- 右對齊選項,將輸出字符串右對齊+
- 這是強製數字簽名的符號選項(左側有一個符號)7
- 寬度選項強製數字的最小寬度為 7,其他空格將由填充字符填充,
- 千位運算符在所有千位之間放置逗號。d
- 指定數字是整數的類型選項。
在格式化浮點數 123.4567
時,我們指定了格式說明符 ^-09.3f
。這些是:
^
- 將輸出字符串與剩餘空間的中心對齊的中心對齊選項-
- 這是強製僅負數顯示符號的符號選項0
- 它是放置在空格位置的字符。9
- 設置數字最小寬度為9的寬度選項(包括小數點、千位逗號和符號).3
- 將給定浮點數的精度設置為 3 位的精度運算符f
- 這是指定數字是浮點數的類型選項。
示例 3:通過覆蓋 __format__() 來使用 format()
# custom __format__() method
class Person:
def __format__(self, format):
if(format == 'age'):
return '23'
return 'None'
print(format(Person(), "age"))
輸出
23
在這裏,我們重寫了類 Person
的 __format__()
方法。
它現在接受 format
參數,如果等於 'age'
則返回 23。如果未指定格式,則返回None
。
format()
函數在內部運行 Person().__format__("age")
以返回 23。
內置format() 對比。字符串format()
format()
函數類似於String format 方法。在內部,這兩種方法都調用對象的__format__()
方法。
雖然內置的format()
函數是在內部使用__format__()
格式化對象的低級實現,但字符串format()
是能夠對多個對象字符串執行複雜格式化操作的高級實現。
相關用法
- Python format()用法及代碼示例
- Python calendar formatmonth()用法及代碼示例
- Python calendar formatyear()用法及代碼示例
- Python focus_set() and focus_get()用法及代碼示例
- Python dict fromkeys()用法及代碼示例
- Python frexp()用法及代碼示例
- Python float轉exponential用法及代碼示例
- Python calendar firstweekday()用法及代碼示例
- Python fsum()用法及代碼示例
- Python filecmp.cmpfiles()用法及代碼示例
- Python float()用法及代碼示例
- Python fileinput.filelineno()用法及代碼示例
- Python fileinput.lineno()用法及代碼示例
- Python fileinput.input()用法及代碼示例
- Python factorial()用法及代碼示例
- Python fabs() vs abs()用法及代碼示例
- Python fileinput.isfirstline()用法及代碼示例
- Python frozenset()用法及代碼示例
- Python string find()用法及代碼示例
注:本文由純淨天空篩選整理自 Python format()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。