通过包名调用python包

问题描述 投票:0回答:1

我想通过其名称来调用我的本地包实用程序,就像在 Django django-admin 中一样。它的结构如下:实用程序名称[命令]

我找到了使用 __ main __.py 调用实用程序的方法。使用该方法的结构是:python -m myappname。但这不是我想要的。

那么我如何使用像 django-admin 中那样的调用结构?我是初级程序员,所以如果这些信息还不够,你可以提问

python django cmd
1个回答
0
投票

django-admin
只是位于属于操作系统将搜索的路径的目录中的文件。

确实,如果我们看一下

django-admin
,它看起来像:

#!/usr/bin/python3
# -*- coding: utf-8 -*-
import re
import sys
from django.core.management import execute_from_command_line
if __name__ == '__main__':
    sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
    sys.exit(execute_from_command_line())

然后它位于例如

~/.local/bin/
中,操作系统列出了它。对于类 Unix 操作系统,通常有一个变量
$PATH
,它是要查看的以冒号分隔的目录列表。对于 Windows,这是一个可以修改的系统变量命名路径。

您因此创建了一个可运行的文件(没有

.py
扩展名,并且具有类 Unix 系统的可执行权限),并将该目录添加到
PATH
环境变量/系统变量中。通常,这将加载虚拟环境并触发另一个脚本。

© www.soinside.com 2019 - 2024. All rights reserved.