如何将脚本config.ini添加到pip包中

时间:2017-11-08 12:43:30

标签: python python-3.x pip

我有使用configparser

的脚本

我的包文件夹结构是:

-- package_name/
   -- src/
      --package_script/(scriptfiles)
      --config/(config .ini to parse)
   -- setup.py(etc)

在脚本中我使用:

def config_read ():
    config = configparser.ConfigParser()
    config.sections()
    config.read('../config/config.ini')
    print(str(datetime.now()) + ' - Config have been read successfully')
    return config
在setup.py中添加了

package_data={'src': ['config/*', ]},

上传前检查dist(* .tar)一切正常。带有config的文件夹config.ini

但是当我使用pip install package_name并使用use命令启动时(包括命令) 错误:

File "c:\users\hell\envs\my_env\lib\site-packages\src\package_name\script.py", line 110, in main
    logged = login(config['Userinfo']['user'], config['Userinfo']['password'])
  File "c:\users\hell\appdata\local\programs\python\python36-32\Lib\configparser.py", line 959, in __getitem__
    raise KeyError(key)
KeyError: 'Userinfo'

包裹脚本不能包含config.ini,

1 个答案:

答案 0 :(得分:0)

代码script_dir = os.path.dirname(__file__) config.read(script_dir + '/../config/config.ini') 加载与当前目录相关的配置。它确实应该与脚本有关。像

这样的东西
{{1}}