python - 重新格式化相同的字符串不起作用。我怎样才能做到这一点?
问题描述
我想在循环中填充一个基本字符串,以访问名称中日历天数增加的文件。这是精简版:
my_str = "filename_{}_blah.txt"
for n in range(3):
my_str = my_str.format(n)
print(my_str)
输出:
filename_0_blah.txt
filename_0_blah.txt
filename_0_blah.txt
我预计数字会增加。
(1)有没有办法解决这个问题,
(2) 为什么会这样?
谢谢你。
解决方案
您需要使用不同的变量来保存格式字符串和结果。如果您分配回同一个变量,它不再包含格式字符串,{}
已被替换为n
. 所以下一次,没有占位符可以替换为 的下一个值n
。
format_str = "filename_{}_blah.txt"
for n in range(3):
my_str = format_str.format(n)
print(my_str)
推荐阅读
- css - 绘制动画后如何关闭SVG三角形顶部的间隙
- javascript - Polyfill for Array.includes 检查 NaN
- xamarin.forms - Prism Library 上“DependsOn”的提议是什么
- java - 我无法使用 Java Spring Boot 和 Angular 7 在远程服务器 (Apache2) 上上传文件。它在 localhost 上运行良好
- python-3.x - 构造函数中的默认参数神奇地变成了类变量
- sql-server - 如何区分创建的文件表中的键
- c++ - 在链接时插入字符串
- vue.js - 如何在 vuex 存储中使用 JSON 数据(无 webpack)
- three.js - 如何仅突出显示整个对象的一个特定部分并使其可点击?
- android - 当 NavHostFragment 的容器消失后,back-stack 为空