我可以在python setup.cfg中使用通配符吗?

时间:2014-08-08 12:37:24

标签: python

我有一个setup.cfg配置脚本,其中列出了要安装的一堆本地文件,例如:

[files]
packages = tests
           utils

scripts = utils/Communication.ComModule.dll
    utils/Communication.DeployerLib.Controls.dll
    utils/Communication.DeployerLib.dll
    utils/Communication.RModule.Data.dll
    utils/Communication.RModule.dll
    utils/Communication.Serial.dll
    utils/Components.dll
    utils/Converters.dll
    utils/Data.dll
    utils/Log.dll
    utils/Log.Log4Net.dll
    ....

因此,我可以使用通配符来安装每个dll文件,而不是列出每个文件吗?这可能吗?我可以使用以下内容(安装所有dll和所有exe)吗?

[files]
packages = tests
           utils

scripts = utils/*.dll
    utils/*.exe

1 个答案:

答案 0 :(得分:2)

如果添加glob模块,则可以。例如:

import glob

wildcard_path = "/some/directory/*.dll"

file_list = glob.glob(wildcard_path)

变量file_list现在将是/ some /目录中所有* .dll文件的列表。因此,将您的通配符路径放在配置文件中,并使用glob来检索实际的文件名。

请记住,您需要注意如何在配置文件中输入路径。我建议在配置文件中使用绝对路径,这样无论您从哪里运行脚本,结果都是一致的。如果将相对路径传递给glob,它将从当前工作目录中查找该路径。