我想用python创建一个基本的动画,只是用print()与多个变量,所有的名字就像那样:frame0, frame1, frame2,…我可以复制粘贴框架,但我想把它们添加到一个名为框架的列表中。
这是我的代码:
frame0 = "D"
frame1 = "CD"
frame2 = "BCD"
frame3 = "ABCD"
frames = []
for i in range(4):
frames.append('frame{i}')
我想以frames = ["D", "CD", "BCD", "ABCD"]
的形式在我的列表中添加四个变量,但是在这里,在循环之后,帧接受字符串,而不是变量内容frames = ['frame0', 'frame1', 'frame2', 'frame3']
。我知道这是因为我在我的附录中使用了",但我还没有找到这个问题的答案。对不起,我的英语脚本很糟糕。
如果变量frame{…}是全局变量,你可以这样做
frame0 = "D"
frame1 = "CD"
frame2 = "BCD"
frame3 = "ABCD"
frames = []
for i in range(4):
frames.append(locals()[f'frame{i}'])
注意如果变量是全局的而不是局部的,那么你可以使用globals()[f'frame{i}']
来代替
编辑:我觉得我应该注意到使用eval()的一些解决方案。我通常建议避开这种情况,正如这个StackOverflow答案
所示