Py学习  »  Python

【Python】浅谈Python中的字符串格式化输出

机器学习初学者 • 3 年前 • 365 次点击  
今天小编就和大家来分享一下Python当中的字符串格式化输出,相信大多数人也对此有所耳闻,但是f-string的格式化输出还是很多不为人所数值的一些特征,因此本篇文章也是希望借此机会来向大家一一说明。

时间与日期的输出

f-string在形式上是以f或者F修饰符引领的字符串,(f'xxx'或者F'xxxx'),以大括号{}标明被替换的字段。首先,我们来看时间和日期的格式化输出,代码如下

import datetime
today = datetime.datetime.today()
print(f"{today:%Y-%m-%d}")

output

2022-05-04

或者是

print(f"{today:%Y}")

output

2022
而关于Python的时间日期的格式化符号,其中%Y表示的是四位数的年份(000-9999),而%m表示的则是月份(01-12),%d表示的则是月内中的一天(0-31),除此之外,还有表示时间的%H:%M:%S格式,其中%H表示的是24小时制的小时数(0-23),12小时制的则是%I,后面剩余的则是分钟和秒数,这里就不做过多的赘述。

打印浮点数更加多样化

打印浮点数的时候,形式也可以是多种多样的,我们可以指定小数点后面保留特定的位数

x, y = 10, 25
print(f"x={x:.3f}, y={y:.3f}")

output

x=10.000, y=25.000
我们还可以给整数添加千分位的符号,代码如下
number = 1234567890
print(f"{number: ,}")

output

 1,234,567,890

另外还可以在数字的最前面添加上货币符号




    
number = 254.3463
print(f"{f'${number:.3f}'}")

output

$254.346

打印字符串时

f-string和字符串结合时,可以与字符串的其他方法联用,代码如下

name = 'ERIC'
print(f'My name is {name.lower()}')

output

My name is eric
除了lower()方法之外,还有upper()方法、capitalize()方法、replace()方法、split()方法等等
name = 'ERIC'
print(f'My name is {name.capitalize()}')

output

My name is Eric

Lambda函数的结合

最后f-string格式化输出也可以和lambda函数结合来使用,代码如下

print(f"{(lambda x: x**2)(4)}")

output

16

今天小编就和大家来分享一下Python当中的字符串格式化输出,相信大多数人也对此有所耳闻,但是f-string的格式化输出还是很多不为人所数值的一些特征,因此本篇文章也是希望借此机会来向大家一一说明。




    
往期精彩回顾




Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/134680
 
365 次点击