我有一个带有__main__.py
文件的python模块,我想把它变成一个应用程序,我可以从任何地方调用它。
这样的事情:
$my_app [args]
或python3 my_app args
我怎样才能做到这一点?
我想,我需要在setup.py
中写一些东西。现在它看起来像这样:
import vk_mutual_friends_finder
from distutils.core import setup
setup(
name="vk_mutual_friends_finder",
packages=["vk_mutual_friends_finder"],
version="1.0",
description="""Finds mutual friends in social network
'vkontakte' (https://vk.com)""",
author="Stepan Kholodov",
url="https://github.com/stepuncius/vk_mutual_friends_finder",
classifiers=[
"Programming Language :: Python",
"Programming Language :: Python :: 3",
"Intended Audience :: Developers and linux power users",
"License :: OSI Approved :: BSD",
"Environment :: Console"
"Operating System :: Linux"
],
)
答案 0 :(得分:1)
我认为最简单的方法是设置别名(http://www.linfo.org/alias.html)。 如果您正在使用bash,可以将“alias myapp =”python3 /path/to/your/app/myapp.py“”行添加到〜/ .bashrc中 之后,您可以使用$ myapp args
从任何地方调用您的应用答案 1 :(得分:0)
如果您希望仅运行vkmff
而不是python3 -m vk_mutual_friends_finder
,请在console_scripts
中使用setup.py
:
setup(
name="vk_mutual_friends_finder",
packages=["vk_mutual_friends_finder"],
...
entry_points={
'console_scripts': [
'vkmff=vk_mutual_friends_finder:main',
],
})
我还认为您不应该在import vk_mutual_friends_finder
中使用setup.py
。
一些有用的链接: