필자는 좋은 Pythonista가 되려고 노력 중이며 배포를 계획중인 패키지에 대해서는 PEP 338을 따르고 있습니다.setuptools를 사용하여`python -m mypackage`를 호출하는 console_scripts 진입 점을 생성하는 방법은 무엇입니까?
나는 또한 python setuptools install
setuptools entry_points{'console_scripts': ... }
옵션을 사용하여 내 실행 스크립트를 생성하려고합니다.
어떻게 python -m mypackage
를 호출하는 바이너리 (* 인수 및 전달, ** kwargs로)를 생성하는 entry_points를 사용할 수 있습니까? 여기
setuptools(
...
(1)
entry_points=
{'console_scripts': ['mypkg=mypkg.__main__'],},
(2)
entry_points=
{'console_scripts': ['mypkg=mypkg.main'],},
(3)
entry_points=
{'console_scripts': ['mypkg=python -m mypkg'],},
내가 사용하고개
주요 자원 :
- http://pythonhosted.org/setuptools/setuptools.html#automatic-script-creation
- https://www.python.org/dev/peps/pep-0338/
- http://www.scotttorborg.com/python-packaging/command-line-scripts.html
- http://blog.habnab.it/blog/2013/07/21/python-packages-and-you/
이 기능은 나를 위해 작동하지만'myscript'를 호출하면 main() 함수가 두 번 호출됩니다. 내 주요 함수는'print ("Success!")'문만 포함하고 출력을 두 번 얻는다. – ben
이것을 덧붙이면,'python -m script_proj'를 호출하면 오직 하나의 출력 – ben
@ rm-rf_ 만 생성됩니다. 'myscript'는'python -m script_proj'와 똑같이'Hello world! '만을 출력합니다 ...hmm – cel