1. 本际云推荐 - 专业推荐VPS、服务器,IDC点评首页
  2. 云主机运维
  3. VPS运维

python程序流程装包派发实例详细说明

Python程序流程装包

在Python程序编写时,有一些好的习惯可以实现相同功能性的编码放到同一个文件,使用这个编码只需要import就行了。下面看这个实例:

python程序流程装包派发实例详细说明

testModel.py

class Test:
    name = 'tom'
    age = 0
    __weight = 0

    def __init__(self, n, a, w):
        self.name = n
        self.age = a
        self.__weight = w

    def speak(self):
        print("Testmodel:", self.name, self.age, self.__weight)

然后,引入上边的编码:

import testModel
testModel.Test("tom", 0, 1).speak()
#Testmodel:tom01

新建Python包

新创建一个文件夹testPackages;testPackages下新创建1个空文件__init__.py,声明书这也是一个Python包,testPackages下新创建1个空文件testModel.py,用以储放函数代码。

testPackages/
├── __init__.py
└── testModel.py

然后,引入上边的编码:

from testPackages import testModel
testModel.Test("tom", 0, 1).speak()
#Testmodel:tom01

搭建Python包

使用setuptools搭建Python包,下面是实现步骤:

packaging_tutorial/
├── LICENSE
├── pyproject.toml#应用什么样的工具(pip或build)构建项目
├── README.md
├── src/
│   └── example_package/
│       ├── __init__.py
│       └── example.py
└── tests/#事例数据

pyproject.toml

[build-system]
requires = ["setuptools>=42"]
build-backend = "setuptools.build_meta"

setup.py是setuptools的搭建脚本,用以组装包的相关信息:名称,版本号和源代码详细地址

import setuptools

with open("README.md", "r", encoding="utf-8") as fh:
    long_description = fh.read()

setuptools.setup(
    name="testPackages",
    version="2.2.1",
    author="Author",
    author_email="authorexample.com",
    description="Asmallexamplepackage",
    long_description=long_description,
    long_description_content_type="text/markdown",
    url="http://baidu.com/",
    classifiers=[
        "Programming Language :: Python :: 3",
        "License :: OSI Approved :: MIT License",
        "Operating System :: OS Independent",
    ],
    package_dir={"": "src"},
    packages=setuptools.find_packages(where="src"),
    python_requires=">=3.6",
)

setup()主要参数:

  • package_dir:字典,key是包名,value是一个文件夹;
  • packages:派发包必须导入的所有控制模块目录;能够手工录入,也可以用find_packages函数全自动探寻package_dir下的所有包或控制模块。

形成派发包

python3 setup.py sdist

当地组装

python3 -m pip install ./dist/testPackages-2.2.1.tar.gz

启用

from testPackages import add
add.add(1, 2)
#3
#在__init__.py搭建了add=testPackages.add.add,因此可以直接用
add(1, 2)
#3

结语

本文关键给大家介绍了Python程序流程装包派发实例详细说明,感兴趣的小伙伴可以参考去了解一下,希望可以有一定的帮助,祝愿大家多多的发展,尽早涨薪。

原创文章,作者:小编小本本,如若转载,请注明出处:https://www.benjiyun.com/yunzhujiyunwei/vps-yunwei/6786.html