Python中f-string字符串格式化的使用
一、基本用法
name = "Alice" age = 25 ? # 使用 f-string 嵌入變量 message = f"My name is {name} and I am {age} years old." print(message) ? # 輸出 My name is Alice and I am 25 years old.
二、嵌入表達(dá)式
a = 5 b = 10 ? # 使用 f-string 嵌入表達(dá)式 result = f"The sum of {a} and is {a + b}." print(result) ? # 輸出 The sum of 5 and 10 is 15.
三、格式化輸出
1、數(shù)字格式化
1.1浮點(diǎn)數(shù)格式化
語法:{value:.nf}
,其中 n
是保留的小數(shù)位數(shù)。
pi = 3.141592653589793 ? # 保留兩位小數(shù) formatted_pi = f"Pi rounded to 2 decimal places: {pi:.2f}" print(formatted_pi) ? #輸出 Pi rounded to 2 decimal places: 3.14
1.2整數(shù)補(bǔ)零
語法:{value:0nd}
,其中 n
是總位數(shù),不足的部分用 0
填充。
number = 42 ? # 補(bǔ)零到 5 位 formatted_number = f"The number is {number:05d}" print(formatted_number) ? #輸出 The number is 00042
1.3千位分隔符
語法:{value:,}
,用逗號(hào)分隔千位。
population = 1234567890 ? # 添加千位分隔符 formatted_population = f"The world population is {population:,}" print(formatted_population) ? #輸出 The world population is 1,234,567,890
1.4百分比格式化
語法:{value:.n%}
,其中 n
是保留的小數(shù)位數(shù)。
ratio = 0.4567 ? # 格式化為百分比,保留兩位小數(shù) formatted_ratio = f"The ratio is {ratio:.2%}" print(formatted_ratio) ? #輸出 The ratio is 45.67%
2、字符串格式化
2.1對(duì)齊和填充
語法:{value:width}
或 {value:<width}
、{value:>width}
、{value:^width}
,其中 width
是總寬度。
<
:左對(duì)齊>
:右對(duì)齊^
:居中對(duì)齊
name = "Alice" ? # 左對(duì)齊,總寬度為 10,用 ' ' 填充 formatted_name = f"Name: {name:<10}!" print(formatted_name) ? # 右對(duì)齊,總寬度為 10,用 '*' 填充 formatted_name = f"Name: {name:*>10}!" print(formatted_name) ? # 居中對(duì)齊,總寬度為 10,用 '=' 填充 formatted_name = f"Name: {name:=^10}!" print(formatted_name) ? # 輸出 Name: Alice ! Name: *****Alice! Name: ==Alice===!
2.2截?cái)嘧址?/h4>
語法:{value:.n}
,其中 n
是保留的字符數(shù)。
long_text = "This is a very long string." ? # 截?cái)酁榍?10 個(gè)字符 formatted_text = f"Truncated: {long_text:.10}" print(formatted_text) ? #輸出 Truncated: This is a
3、日期和時(shí)間格式化
3.1格式化日期
使用 strftime
方法結(jié)合 f-string
格式化日期。
from datetime import datetime ? now = datetime.now() ? # 格式化日期 formatted_date = f"Today is {now:%Y-%m-%d}" print(formatted_date) ? #輸出 Today is 2023-10-05
3.2格式化時(shí)間
from datetime import datetime ? now = datetime.now() ? # 格式化時(shí)間 formatted_time = f"The time is {now:%H:%M:%S}" print(formatted_time) ? #輸出 The time is 14:35:22
4、其他格式化
4.1科學(xué)計(jì)數(shù)法
語法:{value:.ne}
,其中 n
是保留的小數(shù)位數(shù)。
number = 1234567890 ? # 科學(xué)計(jì)數(shù)法,保留兩位小數(shù) formatted_number = f"Scientific notation: {number:.2e}" print(formatted_number) ? #輸出 Scientific notation: 1.23e+09
4.2二進(jìn)制、八進(jìn)制、十六進(jìn)制
語法:
- 二進(jìn)制:
{value:b}
- 八進(jìn)制:
{value:o}
- 十六進(jìn)制:
{value:x}
(小寫)或{value:X}
(大寫)
number = 255 ? # 二進(jìn)制 binary = f"Binary: {number:b}" print(binary) ? # 八進(jìn)制 octal = f"Octal: {number:o}" print(octal) ? # 十六進(jìn)制 hexadecimal = f"Hexadecimal: {number:x}" print(hexadecimal) ? #輸出 Binary: 11111111 Octal: 377 Hexadecimal: ff
四、調(diào)用函數(shù)和方法
name = "alice" ? # 調(diào)用字符串的 title() 方法 formatted_name = f"Hello, {name.title()}!" print(formatted_name) ? # 輸出 Hello, Alice!
字符串title方法:
將所有單詞的首字母大寫包括像it's中的's
與capitalize() 的區(qū)別:capitalize() 僅將整個(gè)字符串的第一個(gè)單詞的首字母大寫,其余字母小寫。
五、使用字典和列表
person = {"name": "Bob", "age": 30} ? # 訪問字典中的值 info = f"{person['name']} is {person['age']} years old." print(info) ? numbers = [1, 2, 3, 4, 5] ? # 訪問列表中的元素 summary = f"The first number is {numbers[0]} and the last number is {numbers[-1]}." print(summary) ? # 輸出 Bob is 30 years old. The first number is 1 and the last number is 5.
六、多行f-string
name = "Charlie" age = 35 ? # 多行 f-string message = f""" Name: {name} Age: {age} """ print(message) ? # 輸出 Name: Charlie Age: 35
七、嵌套f-string
a = 5 b = 10 ? # 嵌套 f-string result = f"The sum of {a} and is {f'{a + b}'}." print(result) ? # 輸出 The sum of 5 and 10 is 15.
到此這篇關(guān)于Python中f-string字符串格式化的使用的文章就介紹到這了,更多相關(guān)Python f-string字符串格式化內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
基于Python+Flask實(shí)現(xiàn)一個(gè)簡易網(wǎng)頁驗(yàn)證碼登錄系統(tǒng)案例
當(dāng)今的互聯(lián)網(wǎng)世界中,為了防止惡意訪問,許多網(wǎng)站在登錄和注冊(cè)表單中都采用了驗(yàn)證碼技術(shù),驗(yàn)證碼可以防止機(jī)器人自動(dòng)提交表單,確保提交行為背后有一個(gè)真實(shí)的人類用戶,本文將向您展示如何使用Python的Flask框架來創(chuàng)建一個(gè)簡單的驗(yàn)證碼登錄系統(tǒng)2023-09-09用selenium解決滑塊驗(yàn)證碼的實(shí)現(xiàn)步驟
驗(yàn)證碼作為一種自然人的機(jī)器人的判別工具,被廣泛的用于各種防止程序做自動(dòng)化的場景中,下面這篇文章主要給大家介紹了關(guān)于用selenium解決滑塊驗(yàn)證碼的實(shí)現(xiàn)步驟,需要的朋友可以參考下2023-02-02python學(xué)習(xí)pymongo模塊的使用方法
這篇文章主要介紹了python學(xué)習(xí)pymongo模塊的使用方法,pymongo模塊是python操作mongo數(shù)據(jù)的第三方模塊,總結(jié)一下常用到的簡單用,需要的小伙伴可以參考一下2022-09-09Python實(shí)現(xiàn)疫情通定時(shí)自動(dòng)填寫功能(附代碼)
這篇文章主要介紹了Python實(shí)現(xiàn)疫情通定時(shí)自動(dòng)填寫功能,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-05-05BeautifulSoup中find和find_all的使用詳解
這篇文章主要介紹了BeautifulSoup中find和find_all的使用詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12Python實(shí)現(xiàn)蟻群優(yōu)化算法的示例代碼
蟻群算法是一種源于大自然生物世界的新的仿生進(jìn)化算法,本文主要介紹了Python如何實(shí)現(xiàn)蟻群算法,文中通過示例代碼具有一定的參考價(jià)值,感興趣的小伙伴們可以了解一下2023-08-08