在 Python 中,很多时候会用到 f-string 用来格式化输出字符串,用于各种开发需求,但你知道还有一些很厉害骚操作吗?今天就给大家列举一下。

<>直接输出变量名,让你的代码更加简单,语法是基于 Python3.10
string = 'Hello Medusa' print(f'{string = }') string = 'Hello Medusa'
<>直接对结果进行计算改变输出,语法是基于 Python3.10
number = 1024 print(f'{number % 1 =}') number % 1 =0
<>直接对事件对象进行格式化输出,语法是基于 Python3.10
datetime = datetime.datetime.now() print(f'{datetime:%Y-%m-%d %H:%M:%S}') 2021-
12-31 16:03:20
<>进制转换输出,语法是基于 Python3.10
number_10 = 1024 print(f'{number_10:b}') # 2进制 print(f'{number_10:o}') # 8进制
print(f'{number_10:x}') # 16进制小写 print(f'{number_10:X}') # 16进制大写 print(f'{
number_10:c}') # ASCII编码 10000000000 2000 400 400 Ѐ
<>格式化浮点数,语法是基于 Python3.10
number_float = 1024.123 print(f'{number_float = :.2f}') # 保留小数点两位小数
number_float_format= '.3f' print(f'{number_float:{number_float_format}}') #
参数嵌套,保留小数点三位小数 number_float = 1024.12 1024.123
<>字符串对其,语法是基于 Python3.10
text = 'Medusa' print(f'{text:>10}') # 右对齐 print(f'{text:<10}') # 左对齐 print(f'{
text:^10}') # 居中对齐 print(f'{text:*^10}') # 居中对齐,用*补齐空白 n = 10 print(f'{text:~^{n
}}') # 参数嵌套,居中对齐,用~补齐空白 Medusa Medusa Medusa **Medusa** ~~Medusa~~
<>!s 和 !r,语法是基于 Python3.10
text = 'Medusa' print(f'{text!s}') # str(text) print(f'{text!r}') # repr(text)
Medusa'Medusa'
<>自定义格式,语法是基于 Python3.10
class MedusaFormatString: def __format__(self, format_spec): return format_spec
print(f'{MedusaFormatString():&1&2}') &1&2

技术
©2019-2020 Toolsou All rights reserved,
【jvm学习】执行引擎python(基本介绍)用户管理和文件权限C++第五章多态性习题:(快大结局了)VHDL——含异步清零和同步使能的加法计数器源程序Windows网络服务渗透测试实战-跨网段攻击JavaScript百炼成仙 1.15 天秀找出游戏的获胜者(java)单片机能做什么,你有什么有单片机或开源硬件做的有意思的作品吗一份笔记让你从 15K 涨薪并跳槽到32K+16