如何从 C:\Python37\Scripts 创建类似于 pip.exe、jupyter.exe 等的 .exe?
How to create a .exe similar to pip.exe, jupyter.exe, etc. from C:\Python37\Scripts?
为了使 pip
或 jupyter
在 Windows 上的命令行可用 不管当前工作目录 只需 pip ...
or jupyter ...
, Python on Windows 好像是用这个方法:
- 将
C:\Python37\Scripts
放入PATH
- 创建一个 100KB 的小 .exe 文件
C:\Python37\Scripts\pip.exe
或 jupyter.exe
可能只是用解释器调用 Python 脚本(我猜?)
然后在命令行中执行 pip ...
或 jupyter ...
,无论当前目录如何。
问题:我如何创建一个类似的 100KB mycommand.exe
,我可以将其放入 PATH 中的目录中,以便我可以从任何地方执行 mycommand
命令行?
注意:我不是谈论pyinstaller、cxfreeze等(我已经知道并且以前使用过);我不认为这些 C:\Python37\Scripts\
exe 文件使用这个。
假设您正在使用 setuptools 打包此应用程序,您需要创建一个 console_scripts
入口点 ,如此处所述:
对于单个 顶级模块,它可能如下所示:
setup.py
#!/usr/bin/env python3
import setuptools
setuptools.setup(
py_modules=['my_top_level_module'],
entry_points={
'console_scripts': [
'mycommand = my_top_level_module:my_main_function',
],
},
# ...
name='MyProject',
version='1.0.0',
)
my_top_level_module.py
#!/usr/bin/env python3
def my_main_function():
print("Hi!")
if __name__ == '__main__':
my_main_function()
然后使用如下命令安装:
path/to/pythonX.Y -m pip install path/to/MyProject
为了使 pip
或 jupyter
在 Windows 上的命令行可用 不管当前工作目录 只需 pip ...
or jupyter ...
, Python on Windows 好像是用这个方法:
- 将
C:\Python37\Scripts
放入PATH - 创建一个 100KB 的小 .exe 文件
C:\Python37\Scripts\pip.exe
或jupyter.exe
可能只是用解释器调用 Python 脚本(我猜?)
然后在命令行中执行 pip ...
或 jupyter ...
,无论当前目录如何。
问题:我如何创建一个类似的 100KB mycommand.exe
,我可以将其放入 PATH 中的目录中,以便我可以从任何地方执行 mycommand
命令行?
注意:我不是谈论pyinstaller、cxfreeze等(我已经知道并且以前使用过);我不认为这些 C:\Python37\Scripts\
exe 文件使用这个。
假设您正在使用 setuptools 打包此应用程序,您需要创建一个 console_scripts
入口点 ,如此处所述:
对于单个 顶级模块,它可能如下所示:
setup.py
#!/usr/bin/env python3
import setuptools
setuptools.setup(
py_modules=['my_top_level_module'],
entry_points={
'console_scripts': [
'mycommand = my_top_level_module:my_main_function',
],
},
# ...
name='MyProject',
version='1.0.0',
)
my_top_level_module.py
#!/usr/bin/env python3
def my_main_function():
print("Hi!")
if __name__ == '__main__':
my_main_function()
然后使用如下命令安装:
path/to/pythonX.Y -m pip install path/to/MyProject