【发布时间】:2023-01-13 10:13:56
【问题描述】:
我在 MacOSX (12.0.1) 和 Python 3.9 上。我想创建一个简单的 python 包供个人使用。使用python setup.py install 创建包后,几乎一切正常:我可以在使用 python 等时导入包。但是,我尝试按照每个在线教程创建关联的可执行脚本。即,我可以从 shell 执行的命令包含我制作的包中的一些功能。但是,没有任何效果。
我的 setup.py 代码:
from setuptools import setup
setup(name='my_package',
version='1.0.0',
description='heeheehoohoo',
author='Me',
author_email='me@me',
url='me.com',
packages=['my_package'],
entry_points={
'console_scripts': ['mypkg=my_package:run']},
install_requires=['cairosvg',
'selenium',
'PyPDF2',
],
include_package_data=True,
zip_safe=False
)
在my_package/__init__.py下我有:
from . mine import main
def run():
import argparse
parser = argparse.ArgumentParser(prog = 'eeeeeee', description = 'eeeeee')
parser.add_argument('eeeeee', help = 'eeeeeee')
args = parser.parse_args()
print(f'eeeee ...')
main(args.eeeeeee)
print(f'Success!')
一切都已安装,但由于某种原因,当我尝试执行 $ mypkg 时,我得到 zsh: command not found: mypkg。从 python 中,我可以导入该函数并直接尝试执行 run()。最奇怪的是,我看到的每个教程都做了类似的事情,一旦执行了python setup.py install,就可以毫无问题地执行命令。
谢谢!
【问题讨论】:
-
这对我来说似乎都是正确的。也许这是
PATH环境变量的问题。您是否检查过它是否包含安装了mypkg的目录?你知道mypkg被安装在哪里吗?
标签: python macos pip setuptools setup.py