【发布时间】:2016-09-04 20:46:09
【问题描述】:
我有一个文件列表,在 python from filename import * 中使用命令,适用于单个文件,因为我给出了文件的确切名称,但如果我想将其用作 from list[i] import * 来遍历列表并一个接一个地从文件中导入功能来处理它,它不起作用?我应该进行哪些更改才能将其用于文件列表,以便我可以轻松迭代?
【问题讨论】:
-
使用
eval将字符串评估为命令 -
没有。
eval不应该被建议作为解决方案。 nedbatchelder.com/blog/201206/eval_really_is_dangerous.html -
无论您打算如何处理,请记住 Style Guide for Python Code 关于导入的内容:“应避免通配符导入 (
from <module> import *),因为它们会导致不清楚哪些名称出现在命名空间,使读者和许多自动化工具都感到困惑。” -
@NickA 如果您打算尝试使用
eval来证明其合理性,那么您应该认真考虑一下您的设计方法。此外,还有literal_eval。真的不应该有机会为eval辩护。 -
@NickA 如果您以前没有使用过语言功能,您可能希望推迟向某人推荐它,直到您意识到它的优点和缺点。像这样无知的吐槽会延续使用
eval等不良做法
标签: python file file-handling