Python将自己的代码封装成一个包供别人调用

背景

        在学习使用Python的过程中,当我们熟练到一定程度之后,我们会积累很多相关的经验和知识,有时候我们已经写过了很多代码,我们会想尝试着把我们的代码封装成一个类似于可以使用pip 安装的那种包的形式,或者是把自己的代码封装成一个包文件夹的形式,这样做的好处是可以让我们下次直接初始化使用或者是对接别人的时候可以让他们直接调用,这样会方便很多。

步骤 

        要将自己的代码封装成一个包,让别人可以调用,可以按照以下步骤进行操作尝试:

  1. 首先创建一个文件夹,作为你的包的根目录。命名为你想要的包名,比如"MyPackage"。
  2. 在根目录下创建一个名为__init__.py的文件,这是一个空文件,用于指示该目录是一个包。
  3. 在根目录下创建一个或多个模块文件,比如module1.pymodule2.py。在这些模块文件中编写你的代码。当然,也可以在这里面在创建包文件夹。
  4. 在根目录下创建一个setup.py文件,用于定义你的包的元数据和依赖关系。以下是一个示例setup.py文件的内容:
from setuptools import setup

setup(
    name='MyPackage',
    version='1.0',
    packages=['MyPackage'],
    install_requires=[
        'dependency1',
        'dependency2',
    ],
    author='Your Name',
    author_email='your.email@example.com',
    description='A description of your package',
    url='https://github.com/yourusername/MyPackage',
)

        请注意,packages参数的值应与根目录的包名保持一致。

        5.在命令行中进入到包的根目录,并运行以下命令来构建你的包:

python setup.py sdist

        这将在dist目录中生成一个压缩文件,其中包含你的包的源代码。

        6. 如果你想将你的包发布到Python Package Index(PyPI),可以按照PyPI的要求进行注册             和上传。

现在,别人可以使用以下方式来安装和调用你的包:

1.首先,他们需要安装你的包的依赖关系。他们可以在命令行中运行以下命令:

pip install dependency1 dependency2

2.然后,他们可以通过运行以下命令来安装你的包:

pip install YourPackageName

3.最后,他们可以在他们的代码中导入你的包并调用其中的函数和类:

from MyPackage.module1 import function1
from MyPackage.module2 import MyClass

function1()
obj = MyClass()

测试 

下面进行一个简单的自建包测试,没有进行发布。

1.建立一个叫"good"的文件夹

2. 在文件夹里面建立一个Test.py的模块文件

3. 在Test.py文件夹里面进行函数书写或者类书写,比如:

def test():
    print('hello world!')

4.写一个测试文件main.py,内容如下:

from good.Test import test
test()

5. 运行测试

关于如何在PyPi上发布及安装的,可以参考官网说明进行尝试. 

 

 

 

 

  • 13
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

图灵追慕者

您的支持是我写作分享最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值