【发布时间】:2020-03-22 13:52:10
【问题描述】:
我正在尝试使用列表元素来命名变量。
我有 3 家公司,分别名为 absoft、dataco、microm。
在我的脚本中,我为类似这样的方法定义了一些方法:
copyfile(absoft_old_file, absoft_copy)
copyfile(dataco_old_file, dataco_copy)
copyfile(microm_old_file, microm_copy)
是否可以从列表中循环这些名称?字符串很简单,但是变量名我还没想好怎么做。
company_list = [absoft, dataco, microm]
for company in company_list:
copyfile(company + _old_file, company + _copy)
请帮忙
【问题讨论】:
-
这样的问题应该总是解释为什么他们在估计的 0.000000000001% 的案例中,这确实是一个比正常方式更好的主意。
-
for company in ['absoft', 'dataco', 'microm']: copyfile(globals()[f'{company}_old_file'], globals()[f'{company}_copy']) -
请不要提出这样的建议。实际上,没有人有充分的理由这样做,每个提出问题的人都最好通过解释原因而不是可能的方法。
-
“为什么”很好。在这里,我有 3 家公司的简短列表,但想要创建一个完全自动化的解决方案 - 比如说我想在未来向这 3 家公司添加另外 100 家公司,我如何使这段代码尽可能可扩展,以便我所要做的一切是否将那些未来的公司添加到 company_list 中?
标签: python list for-loop variables naming