【发布时间】:2021-03-07 13:39:48
【问题描述】:
我知道这是一个糟糕的标题,并且我意识到字典通常是解决这个问题的方法,但我不确定它们如何在我的特定情况下解决这个问题。
我正在使用argsparse 收集用户的输入。我们将调用 args.session_1 和 args.session_2 的两个变量引用路径。
稍后在我的脚本中,我遍历会话 1 和 2,并且我还需要遍历 args.session_{ } 路径引用的目录。但是,我不确定后者该怎么做。
例如,我通常使用 f 字符串,但它不会像这样工作:
for session in [1, 2]:
for file in os.listdir(f'args.session_{session}'):
do whatever
这里,args.session_1 是一个字符串,而不是变量名,所以这不起作用。我的问题是,我怎样才能让args.session_{ } 仍然是一个变量名,同时让会话本身也是一个变量?
这需要使用字典吗?我不确定这会有什么帮助,因为字典值会遇到与字符串相同的问题。
【问题讨论】:
-
如果您使用
print(args.session_1)和session_2,您会得到什么? -
它们是字符串。请参阅@Barmar 的回答,它非常有效。
标签: python string loops variables