我正在运行几个Python脚本,这些脚本除了变量前缀外完全相同。(仅为清晰起见,我正在使用Tweepy和Twitter API)
我已经为每个API凭据命名为
此外,我有名为
我想将其更改为一个文件,其中传递xx字符串作为参数。这对除
当我将它替换为一个字符串变量时,我会得到错误消息:
我已经为每个API凭据命名为
xx_apicred.py
,yy_apicred.py
等,并将其保存为文件夹中的单独文件。此外,我有名为
xx_info
,yy_info
等的表格。通过字符串操作很容易更改此部分内容。我想将其更改为一个文件,其中传递xx字符串作为参数。这对除
from xx_cred import*
之外的所有内容都有效。当我将它替换为一个字符串变量时,我会得到错误消息:
ImportError: No module named 'var'
有没有办法通过变量导入?
import cred
,但它找不到cred
模块。 - pekasusfrom xx import*
或者我每次都必须包含cred.variable
? - pekasusgetattr
: x = getattr(cred, 'variable')。然后你可以用x
代替cred.variable
。 - user2390182variable = cred.variable
来缩短名称。 - Mike Müllerglobals().update(vars(cred))
会覆盖所有内容,包括一些应该保留的特殊值。例如,现在__name__
将变成模块的名称(例如xx_cred
),这意味着像if __name__ == "__main__": main()
这样的代码将失败。但是,vars
显然比inspect
更好。 - Alex Hall