文本中的Python动态值

文本中的Python动态值,python,loops,python-2.7,Python,Loops,Python 2.7,相反,我得到了一个错误 test_1.png test_2.png test_3.png test_4.png test_5.png test_6.png 此外,如果值小于10,是否可以在\uu之后添加0 我正在使用此循环保存文件,但我认为此MWE将更省力,并且可以轻松应用于我的问题您会遇到此错误,因为您没有在本地范围中创建名为“test_1”的变量。使用for循环比使用while循环更容易。还有一种叫做字符串格式的东西,它比字符串连接更容易使用 KeyError: 'test_1' 为什么

相反,我得到了一个错误

test_1.png
test_2.png
test_3.png
test_4.png
test_5.png
test_6.png
此外,如果值小于10,是否可以在
\uu
之后添加
0


我正在使用此循环保存文件,但我认为此MWE将更省力,并且可以轻松应用于我的问题

您会遇到此错误,因为您没有在本地范围中创建名为“test_1”的变量。使用for循环比使用while循环更容易。还有一种叫做字符串格式的东西,它比字符串连接更容易使用

KeyError: 'test_1'

为什么要使用
locals()
?而且不需要将字符串转换为字符串:
str(“.png”)
。为什么还要使用
maxcount
变量<代码>对于范围(1,7)内的i的工作原理是一样的,额外的变量没有任何用处。只是想指出它,以便OP知道。我过去常常在我的代码中有很多额外的变量,因为重构我不需要这些变量。也让任何未来的用户知道他们不需要它。
KeyError: 'test_1'
maxcount = 6
for i in range(1, maxcount+1):
    filename = 'test_{}.png'.format(i)
    with open(filename, 'r') as f:
        # do stuff