小编Sea*_*yue的帖子

Setuptools:如何确保由pip删除由压缩代码生成的文件

我有一个名为的简单代码main.py,用于生成文件夹和文件:

import os
def main():
    path = os.path.join(os.path.dirname(__file__), 'folder')

    if not os.path.isdir(path):
        os.mkdir(path)

    with open(os.path.join(path, 'file.txt'), 'w+') as f:
        f.write('something')


if __name__ == '__main__':
    main()
Run Code Online (Sandbox Code Playgroud)

如果此脚本在文件夹中运行,则结构应如下所示:

.
??? main.py
??? folder
    ??? file.txt
Run Code Online (Sandbox Code Playgroud)

我使用一个setup.py文件打包代码,在那里我分配了一个名为的入口点foo.的setup.py样子:

from setuptools import setup  
setup(
    name='mypack',
    entry_points={
        'console_scripts': ['foo=mypack.main:main'],
    },
    packages=['mypack'],
    package_data={'': '*.txt'},
    include_package_data=True
)
Run Code Online (Sandbox Code Playgroud)

我用以下结构打包代码:

.
??? mypack
?   ??? main.py
??? setup.py
Run Code Online (Sandbox Code Playgroud)

pip install .在根目录下安装它.然后我跑foo,它确实生成了一个文件夹和一个文件.然后我卸载它pip uninstall mypack,终端输出显示:

Uninstalling mypack-0.0.0:
  Would …
Run Code Online (Sandbox Code Playgroud)

python pip python-2.7 python-3.x

9
推荐指数
1
解决办法
188
查看次数

标签 统计

pip ×1

python ×1

python-2.7 ×1

python-3.x ×1