设为首页 加入收藏

TOP

Python字符串格式化与F-String语法(三)
2023-07-25 21:28:25 】 浏览:100
Tags:Python 符串格 F-String 语法
{month:0>2}-{day:0>2}" '2022-01-01'

数字格式化

浮点数 :指定精度显示

pi = 3.141592654
print(f"PI = {pi:.2f}")
# PI = 3.14

print(f"PI = {pi:.3f}")
# PI = 3.142

科学计数

print(f"{pi:e}")	# 不指定精度,默认6位小数,和format一致
# 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'

>>> f"{234234234.1314:_.2f}"
'234_234_234.13'

进制转换

先看看python中常用的用法及其效果:

num = 23
bin(num)	# '0b10111'
oct(num)	# '0o27'
hex(num)	# '0x17'

在f-string中,b、o、x分别代表二进制、八进制、十六进制

f"{num:b}"	# '10111'
f"{num:o}"	# '27'
f"{num:x}"	# '17'

要想实现常用用法的效果,进制规则代码前需要加#号:

f"{num:#b}"	# '0b10111'
f"{num:#o}"	# '0o27'
f"{num:#x}"	# '0x17'
f"{num:#X}" # '0X17'

日期格式化

适用于 datedatetimetime 对象

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'

更多日期格式信息:日期格式信息


Suggestion

(这个建议是引用的其他地方的,发现很多博文都有,就不标出来源了,因为不确定最初的版本来自哪里)

1、如果格式化的字符串是由用户输入的,那么基于安全性考虑,推荐使用Template

2、如果使用的python3.6+版本的解释器,推荐使用F-Strings

3、如果要兼容python2.x版本的python解释器,推荐使用format形式

4、一般不推荐使用%,尤其是生产环境


首页 上一页 1 2 3 下一页 尾页 3/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Python控制语句/循环语句 下一篇python模拟股票的数据分析

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目