2020年8月14日 星期五

Python f-strings 格式化

通過位置
data = ['data1', 'data2']
# format
print("data1: {0}, data2: {1}".format(*data))
# f-strings
print(f"data1: {data[0]}, data2: {data[1]}")
通過關鍵字
personal = {"name": "Json", "age": 12, "sex": "M"}
# format
print("Name: {name}, age: {age}, sex: {sex}".format(**personal))
# f-strings
print(f"Name: {personal['name']}, age: {personal['age']}, sex: {personal['sex']}")
數據精度和類型
num = 23234.76686566
# 保留两位小数
print(f"{num:.2f}")
# 保留两位小数,十个占位符,不足的使用0补充
prinf(f"{num:010.2f}")
填充和對齊經常是一起使用的
personal = {"name": "Json", "age": 12, "sex": "M"}
# format
print("Name: {name:>5}, age: {age:>5}, sex: {sex:>5}".format(**personal))
# f-strings
print(f"Name: {personal['name']:^10}, age: {personal['age']:^10}, sex: {personal['sex']:^10}")
使用!r可以給字符串添加引號
a = "abc"
b = "hjk"
# format
c = "{!r} -- {!r}".format(a, b)
===> "'abc' -- 'hjk'"
# f-string
c = f"{a!r} -- {b!r}"
===> "'abc' -- 'hjk'"
https://www.jianshu.com/p/7ea6d095dbdf

沒有留言:

張貼留言