手把手教你构建自己的第一个Python包

Posted 克金森沐沐

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了手把手教你构建自己的第一个Python包相关的知识,希望对你有一定的参考价值。

1. 使用Github创建项目存储库

在这里插入图片描述
请记住选择.gitignore和liensce文件,.gitignore文件可以帮助您避免将一些中间文件提交到git存储库。

2. 下载git存储库

找到存储库的git地址,并通过执行以下操作将代码下载到本地目录。

git clone https://github.com/xxxx/mydates.git

3. 设计包结构

现在是时候设计你的包结构了。
我们将编写一个名为在这里插入代码片的简单包,它包含两个模块 - DatescoreDates有一个类Important_Dates()。这个类用两个变量初始化:birth_day和wedding_day,然后使用两个函数get_days_passed_in_my_life()get_days_passed_in_marriage()来计算相应的天数。·core有一个测试函数print_test(),它只输出一个测试句子

我们将两个模块放在文件夹mydates下。这里mydates是我们Python包的名称。在mydates文件夹下我们创建一个初始文件__initi__.py来告诉Python自动包含所有模块文件。__init__.py文件的内容如下:

from .core import *
from . import Dates

以上我们展示了引用模块的两种不同方式。from .core import *表明可以直接从我们的包mydates中导入函数,例如from mydates import print_testfrom . import Dates意味着我们需要首先导入Dates模块,例如from mydates import Dates

在我们准备好模块之后,我们为脚本get_my_date.py创建了另一个文件夹scripts。这个测试脚本如下:

from mydates import Dates
from mydates import print_test

birth_day = '1999-09-09'
wedding_day = '2012-05-09'

mydays = Dates.Important_Dates(birth_day, wedding_day)

mydays.get_days_passed_in_my_life()

mydays.get_days_passed_in_marriage()

print_test()

整个Python包的结构如下:


在这里插入图片描述

4. 编写setup.py文件

要安装我们的软件包mydates,我们还需要编写一个setup.py文件,如下所示:

from distutils.core import setup

setup(
    name='mydates',
    version='0.0.1',
    author='X.X',
    author_email='xx@example.com',
    url='www.example.com',
    license='LICENSE',
    packages=['mydates'],
    description='An example of building Python package.',
    install_requires=[
    #'python>=3.6.0',
    #'pandas>=0.10.0'
    ]
)

大多数时候我们自己的包需要用到其他Python包的函数,也就是所谓的依赖包。有两种方法可以声明这些所依赖的包信息。

  • a) 把所需要的包信息写在setup.py文件的install_requires字典中。
  • b) 单独生成一个requirements.txt文件。

第二种方法是首选方法,因为它提供了所有必需包的最全面的列表。 此处给出了两种方法详细对比说明. 本包中用到的requirements.txt文件如下:

python>=3.6.0
pandas>=0.1.0

注:一般在开发一个Python包的时候会单独创建一个环境,然后我们可以用pip freeze > requirements.txt语句来自动生成requirments.txt文件。在安装的时候,可以用pip install -r requirements.txt安装相应的包。

5. 安装包的两种方法

现在我们可以安装我们的第一个Python包mydates了。同样,我们可以使用两种方式进行安装。

  • a)官方模式:在包根文件夹下运行pip install .。这与安装其他Python包类似。
  • b)开发模式:pip install -e .。这样我们所做的任何更改都可以立即反映到包中,这是安装开发包的典型方法。

一旦我们安装了软件包,我们就可以转到scripts文件夹并运行测试脚本get_my_dates.py,它会给我们以下结果:

You have been living in this world for 7192 days!
You have been married for 2566 days!
This is a test.

恭喜!至此你已经完成了你的第一个Python包!

最后还有句话是这么说的:栽一棵树最好的时间是十年前,其次是现在。对于学习编程或者正在工作的朋友,如果你想更好的提升你的编程能力帮助你提升水平!笔者这里或许可以帮到你~

分享(源码、项目实战视频、项目笔记,基础入门教程)在这里插入图片描述
欢迎转行和学习编程的伙伴,利用更多的资料学习成长比自己琢磨更快哦!
————————————————
如有疑问,欢迎在评论区一起讨论!

如有不正确的地方,欢迎指导!

以上是关于手把手教你构建自己的第一个Python包的主要内容,如果未能解决你的问题,请参考以下文章

手把手教你如何构建 WPF 官方开源框架源代码

手把手教你如何构建 WPF 官方开源框架源代码

手把手教你如何构建 WPF 官方开源框架源代码

东方的第一本“凤凰架构”竟是出自阿里,手把手教你构建可靠大型分布式系统

手把手教你构建WPF官方开源框架源代码

手把手教你做一个python+matplotlib的炫酷的数据可视化动图