闽公网安备 35020302035485号
                name = "Tom"
print(f"I'm {name}")
# I'm Tom
表达式求值print(f"3 x 2 = {3*2}")
# 3 x 2 = 6
print(f"{3 * 2 = }")
# 3 * 2 = 6
调用函数name = "Tom"
print(f"I'm {name.lower()}")
# I'm tom
多行stringname, job = "tom", "student"
s = f"""I'm {name.capitalize()}, 
and I'm a {job.capitalize()}"""
print(s)
"""
I'm Tom, 
and I'm a Student
"""
对齐Syntax: {:[width][.precision][type]}
对齐效果由width控制:<:左对齐
>:右对齐(默认)
^:居中对齐
word = "python"
>>> f"|{word:<10}|"
'|python    |'
>>> f"|{word:>10}|"
'|    python|'
>>> f"|{word:^10}|"
'|  python  |'
带有补全的对齐效果:# 本例用小数点来补全空余内容
>>> f"|{word:.<10}|"
'|python....|'
>>> f"|{word:.>10}|"
'|....python|'
>>> f"|{word:.^10}|"
'|..python..|'
例子:year, month, day = 2022, 1, 1
>>> f"{year}-{month:0>2}-{day:0>2}"
'2022-01-01'
数字格式化Syntax: {:[width][.precision][type]}
由precision指定精度,type对应数据类型。pi = 3.141592654
print(f"PI = {pi:.2f}")
# PI = 3.14
print(f"PI = {pi:.3f}")
# PI = 3.142
科学计数
print(f"{pi:e}")
# 3.141593e+00
print(f"{pi:.2e}")
# 3.14e+00
百分比格式化print(f"PI = {pi:.3%}")
# PI = 314.159%
print(f"PI = {pi:.2%}")
# PI = 314.16%
千位分隔符>>> f"{234234234:,}"
'234,234,234'
>>> f"{234234234.1314:,.2f}"
'234,234,234.13'
进制转换num = 23 bin(num) # '0b10111' oct(num) # '0o27' hex(num) # '0x17'在f-string中,b、o、d、x分别代表二进制、八进制、十进制、十六进制
f"{num:b}" # '10111'
f"{num:o}" # '27'
f"{num:d}" # '23'
f"{num:x}" # '17'
要想实现常用用法的效果,进制规则代码前需要加#号:f"{num:#b}" # '0b10111'
f"{num:#o}" # '0o27'
f"{num:#d}" # '23'
f"{num:#x}" # '0x17'
lambda表达式>>> f"result is {(lambda x: x**2+1)(5)}"
'result is 26'
日期格式化today = datetime.datetime.today()
f"{today:%Y}" # '2022'
f"{today:%Y-%m}" # '2022-12'
f"{today:%Y-%m-%d}" # '2022-12-16'
f"{today:%F}" # '2022-12-16'
f"{today:%D}" # '12/16/22'
f"{today:%X}" # '21:01:27'
f"{today:%F %X}" # '2022-12-16 21:01:27'