python格式化字符串总结

本文深入探讨了Python中三种常用的格式化字符串方法:占位符%操作符、format()函数及f-string语法。通过实例展示了每种方法的具体用法,帮助读者理解如何在字符串中插入变量,实现动态内容填充。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

格式化字符串在编码中经常使用,总结如下:

①占位符:%s
②format:{}.format()
③f-string:f"…{}…" (需python 3.6之后)

示例:

%s

test_str = 'hello %s' % (world)	# hello world

format

test_str = 'hello {}'.format(world)	# hello world

f-string

test_str= f"{1+2}"  # 3
good = {'goodsname': 'vitamin', 'goodsnum': 20}
test_str = f"goodsname is {good['goodsname']}, number {good['goodsnum']}."
#goodsname is vitamin, number 20
### Python格式化字符串的使用方法 在 Python 中,有四种主要的字符串格式化方式:百分号格式化(`%`)、`str.format()` 方法、f-string 和模板字符串。以下是每种方法的具体介绍: #### 百分号格式化 (`%`) 这是最早的一种字符串格式化方法,通过 `%` 符号实现。它可以接受元组或者字典作为输入参数。 ```python name = "Alice" age = 25 context1 = "Name: %s, Age: %d" % (name, age) print(context1) # 输出: Name: Alice, Age: 25 ``` 然而,这种方法有一些局限性,比如支持的数据类型较少,仅限于 `int`, `str`, `double` 等基本数据类型[^1]。对于更复杂的场景可能不够灵活。 --- #### `str.format()` 方法 为了克服 `%` 格式化的不足之处,Python 引入了 `str.format()` 方法。该方法更加灵活,允许指定位置索引以及命名占位符,并且可以处理更多类型的对象。 ```python name = "Bob" age = 30 context2 = "Name: {}, Age: {}".format(name, age) print(context2) # 输出: Name: Bob, Age: 30 # 命名占位符 context3 = "Name: {n}, Age: {a}".format(n=name, a=age) print(context3) # 输出: Name: Bob, Age: 30 ``` 尽管功能强大,但其代码相对冗长,尤其是在需要多次替换的情况下[^2]。 --- #### f-string (格式化字符串字面量) 自 Python 3.6 起引入的 f-string 是一种简洁高效的字符串格式化工具。它可以直接嵌入变量或表达式到字符串中,无需额外调用函数。 ```python name = "Charlie" age = 35 context4 = f"Name: {name}, Age: {age}" print(context4) # 输出: Name: Charlie, Age: 35 # 支持复杂表达式 value = 7 * 8 context5 = f"The result of 7 * 8 is {value}." print(context5) # 输出: The result of 7 * 8 is 56. ``` 相比前两种方法,f-string 的优势在于语法简单直观,性能也更高[^4]。 --- #### 字符串对齐与宽度控制 除了上述基础用法外,还可以利用格式说明符来调整输出样式,例如设置字段宽度、填充字符和对齐方向等。 ```python max_length = 10 str1 = "apple" str2 = "banana" aligned_str1 = "{:<{}}".format(str1, max_length) # 左对齐 aligned_str2 = "{:^{}}".format(str2, max_length) # 居中对齐 aligned_str3 = "{:>{}}".format("cherry", max_length) # 右对齐 print(aligned_str1) # 输出: apple print(aligned_str2) # 输出: banana print(aligned_str3) # 输出: cherry ``` 这种技巧常用于表格显示或其他需要整齐排列文本的应用场合[^3]。 --- ### 总结 以上介绍了 Python 中常用的几种字符串格式化方法及其特点。开发者可以根据实际需求选择最适合的方式完成任务。 问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值