python f-string格式化字符串

  1. 定义
    f-string 是 python3.6 之后版本添加的,称之为字面量格式化字符串。

  2. 旧版格式化字符串方式

name = 'Runoob'
print('Hello %s' % name)
# output
# 'Hello Runoob'
  1. f-string格式化字符串
    f-string 格式话字符串以 f 开头,后面跟着字符串,字符串中的表达式用大括号 {} 包起来,它会将变量或表达式计算后的值替换进去
name = 'Runoob'
print(f'Hello {name}' ) # 替换变量
# output
# 'Hello Runoob'

print(f'{1+2}' )        # 使用表达式
# output
# '3'
w = {'name': 'Runoob', 'url': 'www.runoob.com'}
print(f'{w["name"]}: {w["url"]}')
# output
# 'Runoob: www.runoob.com'
  1. 使用 = 符号拼接运算表达式与结果(Python 3.8版本)
x = 1
print(f'{x+1}')   # Python 3.6
# output
# 2

x = 1
print(f'{x+1=}')   # Python 3.8
# output
# 'x+1=2'
  1. 格式化字符串举例
"First, thou shalt count to {0}"  # References first positional argument
"Bring me a {}"                   # Implicitly references the first positional argument
"From {} to {}"                   # Same as "From {0} to {1}"
"My quest is {name}"              # References keyword argument 'name'
"Weight in tons {0.weight}"       # 'weight' attribute of first positional arg
"Units destroyed: {players[0]}"   # First element of keyword argument 'players'.
  1. 字符串格式化转换标识
    目前支持的转换标识:
'!s' 会对值调用 str()
'!r' 调用 repr()
'!a' 则调用 ascii()
"Harold's a clever {0!s}"        # Calls str() on the argument first
"Bring out the holy {name!r}"    # Calls repr() on the argument first
"More {!a}"                      # Calls ascii() on the argument first
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: f-stringPython3.6及更高版本中引入的一种字符串格式化方法。除了基本的变量插入外,f-string还支持一些高级的用法。 首先,f-string支持表达式的内嵌计算。我们可以在花括号内使用任何有效的Python表达式,例如函数调用、数学运算等。这样我们可以直接在格式化字符串中执行计算,避免了额外的步骤。 其次,f-string还支持设定字段的宽度和对齐方式。可以在花括号中使用冒号(:)来进行格式设置。可以指定字段的宽度以及对齐方式(左对齐:<,右对齐:>,居中对齐:^),方便美化输出格式。 另外,f-string还可以在花括号内使用格式化说明符。格式化说明符可以用来指定数值的显示格式,如小数位数、千位分隔符等。通过在冒号后加上格式化指令,可以实现更加灵活的数值格式化。 此外,f-string还支持特殊字符的转义。在花括号内使用双花括号({{}})表示打印花括号字符本身,避免被解析为变量插入。 总的来说,f-string提供了一种简洁而强大的字符串格式化方式。它可以方便地嵌入变量和表达式,支持字段宽度和对齐方式的设置,允许使用格式化说明符进行数值格式化,并支持特殊字符的转义。这些高级用法使得f-string在日常编程中能够更好地满足我们对字符串格式化的需求。 ### 回答2: Python 3 中的 f-string 是一种方便的字符串格式化方法,在格式化字符串时具有一些高级用法。 首先,可以在 f-string 中使用表达式。除了简单的变量名外,还可以在大括号中使用任何有效的表达式,例如数学运算、函数调用等。这样可以灵活地对字符串进行计算或处理。 其次,可以在 f-string 中使用属性和方法。如果大括号中的表达式是一个对象的属性或方法调用,f-string 将自动获取或调用它们的值。这使得处理对象属性和方法时更加方便。 此外,可以在 f-string 中使用格式化选项。通过在大括号中使用冒号:,可以指定格式化选项。例如,可以设置宽度、精度、填充字符等等。这样可以方便地控制输出的格式。 另外,可以在 f-string 中使用字典和列表。通过使用花括号 {} 和索引或键名,可以方便地获取字典和列表中的元素,并进行格式化输出。 最后,可以在 f-string 中使用循环和条件语句。通过在大括号中使用循环和条件表达式,可以根据需要多次输出字符串或进行条件判断,并灵活地处理输出结果。 综上所述,Python 3 的 f-string 提供了一种高级的字符串格式化方法,不仅可以进行简单的变量替换,还可以使用表达式、属性和方法、格式化选项、字典和列表、循环和条件语句等高级功能。这些特性使得 f-string 成为一种非常方便和灵活的字符串格式化工具。 ### 回答3: Python3中的f-string是一种方便且直观的格式化字符串的方式。除了基本的字符串插值功能外,它还有一些高级用法,可以更灵活地处理字符串格式化需求。 一、格式化变量: f-string可以直接在字符串中插入变量,并使用大括号{}将变量包裹起来。可以在大括号内使用简单表达式对变量进行格式化。例如: name = 'Alice' age = 20 print(f'My name is {name} and my age is {age}.') # 输出:My name is Alice and my age is 20. 二、格式化数字: f-string支持在大括号内使用格式化选项,对数字进行格式化。例如: num = 3.1415926 print(f'The value of pi is approximately {num:.2f}.') # 输出:The value of pi is approximately 3.14. 三、调用函数: f-string中可以直接调用函数,并将函数的返回值插入到字符串中。例如: def get_greeting(): return 'Hello' print(f'{get_greeting()} World!') # 输出:Hello World! 四、使用表达式: f-string支持在大括号内使用复杂的表达式,可以对变量进行运算、取长度等操作。例如: name = 'Alice' print(f'My name is {name.upper()} and my name has {len(name)} characters.') # 输出:My name is ALICE and my name has 5 characters. 总结: Python3的f-string是一种强大的字符串格式化工具,它不仅可以简洁地插入变量,还支持格式化数字、调用函数和使用表达式。它的高级用法可以满足更复杂的字符串格式化需求,提高开发效率。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值