Python字符串中的空大括号{}代表什么含义?
Python str.format() 占位符用法解答
你看到的代码中空大括号是Python str.format() 字符串格式化方法的标准占位符语法,具体运行逻辑如下:
- 字符串内的
{}是待填充的占位符,会按先后顺序依次匹配format()括号中传入的参数:第一个{}匹配第一个参数linecount,第二个{}匹配第二个参数line,所有占位符填充完成后才会生成完整字符串交给print打印。
举个实际运行示例:如果当前linecount值为2,line值为"first file content",代码最终输出结果为:Line 2: first file content
你已经了解的f-string是Python 3.6版本才推出的语法优化方案,和str.format()的核心功能一致,两者的等价写法对比如下:
# str.format() 写法,兼容Python 2.7、全版本Python3,适用场景更广 print("Line {}: {}".format(linecount, line)) # 等价的f-string写法,仅支持Python3.6及以上版本,写法更简洁直观 print(f"Line {linecount}: {line}")
除此之外str.format()还支持手动指定占位符对应的参数索引,灵活调整参数匹配顺序,示例如下:
# {1}对应format传入的第二个参数linecount,{0}对应第一个参数line print("Line {1}: {0}".format(line, linecount))
上述代码运行效果和最开始的示例完全一致。
内容的提问来源于stack exchange,提问作者noobie
相关产品推荐
相关产品推荐

