Python字符串格式中的[%s]是什么?代码里[%s]功能求解
Python字符串格式中
[%s]的含义与功能解析 嘿,我来帮你把这个点掰扯清楚!
首先,[%s]里的核心是那个%s——它是Python**旧式字符串格式化(也就是大家常说的%格式化语法)**里的占位符,外面的方括号就是普通的字符串字符,会原封不动保留在最终的结果里。
具体来说,%s的功能是:
- 它可以接收任意类型的对象(不管是字符串、数字、列表、字典甚至自定义类实例),自动调用该对象的
__str__()方法把它转换成字符串,然后替换掉这个占位符的位置。
给你举两个实际的代码例子,一看就懂:
# 传入字符串 username = "行之张" print("当前登录用户:[%s]" % username) # 输出:当前登录用户:[行之张]
# 传入数字 score = 95 print("本次考试得分:[%s]" % score) # 输出:本次考试得分:[95]
顺便提一句,现在Python官方更推荐用更灵活的f-string(Python3.6及以上支持)或者str.format()来做字符串格式化,比如上面的例子用f-string写会更简洁:
print(f"当前登录用户:[{username}]")
但旧式的%格式化还是会出现在不少老项目或者遗留代码里,所以搞懂它的用法还是很有必要的。
内容的提问来源于stack exchange,提问作者行之张




