Rumah >pembangunan bahagian belakang >Tutorial Python >Pengenalan kepada rentetan f dalam python dan kegunaan biasanya

Pengenalan kepada rentetan f dalam python dan kegunaan biasanya

PHPz
PHPzke hadapan
2023-06-27 12:34:165964semak imbas

Kata Pengantar

Seorang rakan melihat bahawa f'{}' muncul dalam artikel berkaitan perpustakaan Faker yang saya tulis sebelum ini. Dia bertanya kepada saya apa maksudnya?

Sebenarnya, ini menggunakan f-string sebagai kaedah pemformatan Atas sebab ini, kami menyenaraikan secara ringkas f-string dan penggunaan biasa untuk rujukan rakan anda.

1. Apakah itu f-string?

Pada masa ini, Python f-string ialah sintaks terkini untuk melaksanakan pemformatan rentetan. Tersedia sejak Python 3.6.

Python f-strings menyediakan cara memformat rentetan dalam Python yang lebih pantas, lebih mudah dibaca, ringkas dan kurang ralat. f Rentetan diawali dengan f dan nilai dinilai menggunakan kurungan {}. Tentukan penentu format untuk jenis, pelapik atau penjajaran selepas titik bertindih. Contohnya: f'{price:.3f}', dengan harga ialah nama pembolehubah dan .3f menunjukkan ketepatan (mengekalkan tiga tempat perpuluhan).

2. Penggunaan biasa pemformatan

Terdapat tiga kaedah pemformatan biasa dalam Python, iaitu:

1 % simbol + penentu format

2

3 contoh. Semua keputusannya ialah "[Zhang San] berumur [18] tahun ini", tetapi kaedah pemformatan berbeza digunakan:

name = "张三"
age = 18
# 最原始提供的字符串替换方法,使用了 % 运算符和经典字符串格式指定,如 %s %d 等
print("【%s】今年【%d】岁" % (name, age))  # 【张三】今年【18】岁
# Python 3.0 新增了 format() 函数,可以提供高级的格式化选项
print("【{}】今年【{}】岁".format(name, age))  # 【张三】今年【18】岁
# Python 3.6 f-string出现,使得格式化方法更加灵活,字符串前缀为 f,并使用 {} 评估值
print(f"【{name}】今年【{age}】岁")  # 【张三】今年【18】岁

3 Ringkasan penggunaan biasa f-string

Contoh berikut menggambarkan penggunaan f-string. Beberapa penggunaan biasa

1. Terima ungkapan dalam f-string

num = 12
price = 6
# f-string 中可以接收表达式
print(f'【{num}】个苹果,每个【{price}】元,一共要花【{num * price}】元')
# 【12】个苹果,每个【6】元,一共要花【72】元

2 boleh mengambil nilai dari kamus

user = {"name": "Ace", "job": "teacher"}
print(f'【{user["name"]}】的工作是【{user["job"]}】')
# 【Ace】的工作是【teacher】

3. Panggilan f-rentetan berfungsi dalam

name = "李四"
age = 28
job = "码农"
msg = (
    f'Name: {name}\n'
    f'Age: {age}\n'
    f'Job: {job}'
)  # 注意 msg 使用了 () 进行包裹
print(msg)
# Name: 李四
# Age: 28
# Job: 码农

5. penggunaan f-string escape

def my_max(x, y):
    """
    三目运算比较两个数字大小
    :param x: int x
    :param y: int y
    :return: x 和 y 中较大的数字
    """
    return x if x > y else y
a = 3
b = 4
print(f'【{a}】和【{b}】中较大的是【{my_max(a, b)}】')
# 【3】和【4】中较大的是【4】

6 nombor titik terapung berformat f-string

print(f"Python 使用 {{}} 来计算f-string中的变量")
# Python 使用 {} 来计算f-string中的变量
print(f'你真的很\'厉害\'')  # 注意:单引号中想继续使用单引号,那就需要进行转义
# 你真的很'厉害'

7 lebar berformat f-string

val = 11
# 通过 : 后跟 浮点数标识 ,可以实现格式化浮点数
print(f'{val:.3f}')  # 11.000
print(f'{val:.4f}')  # 11.0000

8

9. masa pemformatan f-string

for i in range(1, 11):
    print(f'{i:02} {i * i:3} {i * i * i:4}')
# 01   1    1
# 02   4    8
# 03   9   27
# 04  16   64
# 05  25  125
# 06  36  216
# 07  49  343
# 08  64  512
# 09  81  729
# 10 100 1000

10. f-string menerima objek, nota: objek mesti mentakrifkan fungsi __str__() atau __repr__()

s1 = 'a'
s2 = 'ab'
s3 = 'abc'
s4 = 'abcd'
# 将输出的宽度设置为十个字符。 使用 > 符号,让输出结果右对齐。
print(f'{s1:>10}')
print(f'{s2:>10}')
print(f'{s3:>10}')
print(f'{s4:>10}')
#          a
#         ab
#        abc
#       abcd
# 实际上,只要大于最大的字符串长度,就可以实现右对齐,感兴趣可以试下小于最大字符串长度会有什么表现

nota: hanya disokong oleh Python 3.6 ke atas !

Nota: Hanya disokong oleh Python 3.6 ke atas!

Nota: Hanya disokong oleh Python 3.6 ke atas!

Atas ialah kandungan terperinci Pengenalan kepada rentetan f dalam python dan kegunaan biasanya. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam