python setup.py将数据文件放在%APPDATA%目录中

时间:2016-06-07 13:36:40

标签: python setup.py

我想在安装软件包时将默认配置文件复制到%APPDATA%\ foo目录。

from setuptools import setup

setup(
    name = 'foo',
    version = '0.1.0.dev1',
    author = 'me',
    packages = ['foo'],
    data_files=[(r'%APPDATA%\foo', ['foo.config'])]
)

目录结构是:

  • 包顶级
    • setup.py
    • foo.config
    • FOO
      • 初始化的.py
      • bar.py

当我运行python setup.py时,它会将foo.config放入egg中。它输出:

复制foo.config - >建立\ bdist.win-AMD64 \蛋\%APPDATA%\ FOO

我正在使用python 3.5。 setuptools可以将文件复制到由系统变量确定的其他目录,是这样的吗?

1 个答案:

答案 0 :(得分:0)

后见之明显而易见。出于某种原因,我不知道你可以在setup.py中有常规的python代码。只需导入操作系统并将上面的data_files替换为:

data_files=[(os.path.join(os.environ['APPDATA'], 'foo'), ['foo.config'])]