Tags: 数据类型 AI 人工智能

Python F-String 字符串格式化教程

在Python 3.6之前,格式化字符串一般使用format()方法。而自Python 3.6起,更简洁、更快速的F-String成为推荐的字符串格式化方法。本文详细介绍F-String的常见用法。

1. 什么是F-String?

F-String是Python 3.6新增的字符串格式化方法,通过在字符串前加f标识即可使用。

示例:

price = 49
txt = f"这个商品的价格是 {price} 美元"
print(txt)
# 输出:这个商品的价格是 49 美元

2. F-String基础使用

(1)直接嵌入变量

name = "张三"
age = 28
txt = f"{name}今年{age}岁。"
print(txt)
# 输出:张三今年28岁。

(2)格式化数字位数

例如,保留小数点后两位:

price = 49.567
txt = f"价格是 {price:.2f} 美元"
print(txt)
# 输出:价格是 49.57 美元

3. F-String的高级用法

(1)执行数学运算

在字符串中直接执行运算:

quantity = 3
price = 20
txt = f"总价是 {quantity * price} 美元"
print(txt)
# 输出:总价是 60 美元

(2)使用条件表达式

直接在F-String中使用if...else

price = 60
txt = f"这个商品{'很贵' if price > 50 else '便宜'}"
print(txt)
# 输出:这个商品很贵

(3)调用方法或函数

在字符串中调用方法:

fruit = "apple"
txt = f"I like {fruit.upper()}"
print(txt)
# 输出:I like APPLE

在字符串中调用自定义函数:

def convert_to_meters(feet):
    return feet * 0.3048

altitude = 30000
txt = f"飞机飞行高度为 {convert_to_meters(altitude)} 米"
print(txt)
# 输出:飞机飞行高度为 9144.0 米

4. F-String格式化修饰符

以下是一些常用格式化修饰符:

  • :, 数字千位分隔符
  • :.2f 保留两位小数
  • :% 百分比格式
  • :b 二进制格式
  • :x 十六进制格式

示例:

price = 59000
txt = f"价格是 {price:,} 美元"
print(txt)
# 输出:价格是 59,000 美元

5. 与format()方法的比较

format()方法是Python 3.6之前推荐的格式化方式,但速度较慢且较复杂:

使用format()示例:

price = 49
txt = "价格是 {} 美元".format(price)
print(txt)
# 输出:价格是 49 美元

同时处理多个变量:

quantity = 3
itemno = 567
price = 49
myorder = "我要{}个编号为{}的商品,每个{:.2f}美元。"
print(myorder.format(quantity, itemno, price))
# 输出:我要3个编号为567的商品,每个49.00美元。

 

F-String语法简洁,功能强大,是目前推荐的Python字符串格式化方法。使用F-String,可以提高代码的可读性与运行效率。