保姆级教程带你开发优质的Python库之上篇【建议收藏】

雷学委 2021-10-26 04:09:48
教程 开发 带你 优质 保姆

正式的Python专栏第9篇,同学站住,别错过这个从0开始的文章!

前面学委的python入门到精通专栏积累了8篇python文章,当然学委博客还有几十篇python应用的文章。

展示了很多啊,一路跟上的朋友估计也学习到很多了。

这次几分钟,给大家缕一缕,指导大家开发一个python库。下次带大家开发生成器!

(先导说明,下面图中的联系群体/联系方式均为demo展示作用,不要搜索!不要关注!哈哈哈)

什么是python库?

python库,简单理解就是一个python脚本代码集合。这个库可以包括一个或者多个python代码文件。
重点是,提供统一入口(模块)给他人使用。

小白如果还不清楚,就把它理解为一个数学里面的一个公式。

我们运用公式来计算出数据结果的过程,可以类比使用python库调用并运行的到结果。

现在开发一个库

之前写过 一个小而全的Python项目示例,但是这个项目相对新手来说,还是元素过多了。

第一步,项目基本配置

必备文件:README.md ,这个 文件告诉了其他开发者,你分享的代码的一些说明和使用信息。

典型的项目README文件展示如下:
在这里插入图片描述
生成上面的内容可以复制这里的README.md进行修改

重点是:

  • 项目介绍必要有的
  • 安装,类似pip install xxx(xxx为你的库名)
  • 使用的简单说明

其他信息像加入社区群体的可以另外再补充。

第二步开发模块内的代码

python里面很简单,创建一个目录里面放置一个__init__.py 就能把当前目录标记为可用模块了。

但是我们不要那么鲁莽。

  1. 创建一个pypi_seed目
  2. 然后再里面放置__init__.py 文件
  3. 最后编写main.py(这是库的核心文件,也可以叫做core.py)

效果如下:

在这里插入图片描述

第三步,丰富一下核心代码

上面的操作还只是创建了一些空文件。

下面我们打开main.py 复制黏贴下面的内容。

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2021/9/5 12:07 上午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷学委
# @XueWeiTag: CodingDemo
# @File : main.py
# @Project : pypi_seed
def main():
print("pypi_seed 种子项目")
print("欢迎关注公众号【雷学委】【孤寒】【布小禅】,加入Python开发者阵营!")
print("===========================================")
print("如何创建项目:")
print("1)打开python终端REPL:")
print("2)输入下面代码:")
print("import pypi_seed.main as pm")
print("pm.generate() #当前目录生成pypi_sample")
print("#或者加一个路径参数")
print("pm.generate('/tmp') #当前目录生成/tmp/pypi_sample")
print("#或者指定更多项目信息:")
print("pm.generate(path=\".\", project=\"pypi_sample\", author=\"pypi_seed\") #当前目录生成/tmp/pypi_sample,作者pypi_sample")
print("===========================================")
print("Please feel free to contact us【Python全栈技术学习交流】:https://jq.qq.com/?_wv=1027&k=ISjeG32x ")
print("===========================================")
if __name__ == '__main__':
main()

代码解析:

上面实现了一个main函数,输出了一些程序信息。比如一些虚拟账号和联系方式,强烈提示读者不要打开链接或者搜索群体!(学委这里特别标注了一下!仅为demo目的)

可以做很多事情的,但是这篇从简单入手,后续会开发生成器!

好了,开发结束了。

最后调用运行看下效果

在这里插入图片描述
可以在库提示中输出一些开发群体信息,请读者不要搜索

补充一下,其他人调用你的库是这样的:

import pypi_seed.main #引入你的库的主程序
main.main() #调用主程序的main函数

总结

整个过程挺简单的。

别人找到你的库就很不容易了,所以务必把README说明写的越简单越直白越好!

然后是使用的例子,必须力求简洁易懂。

喜欢Python的朋友,请关注学习 Python基础专栏 or Python入门到精通大专栏

持续学习持续开发,我是雷学委!
编程很有趣,关键是把技术搞透彻讲明白。
创作不易,请关注收藏点赞,或者留下评论打打气!

版权声明
本文为[雷学委]所创,转载请带上原文链接,感谢
https://levin.blog.csdn.net/article/details/120171133

  1. Python project management and construction, these four tools are enough!
  2. IDE的使用,pycharm引入Python库
  3. In the 120 series columns, you can learn the python beautiful oup4 module, 7000 word blog + climb the ninth workshop network
  4. Django运行xadmin 报错解析 ImportError: cannot import name 'DEFAULT_FORMATS' from 'import_export.admin'
  5. Python程序大学课程写程序
  6. Programme Python Programme d'études collégiales
  7. Python程序大學課程寫程序
  8. Django runxadmin Error resolution importerror: cannot Import name 'default Formats' from 'import _ Export.admin»
  9. Python 函数式编程,看这一篇足够了!
  10. 太棒了!11个好用到起飞的「Python字典」知识点!
  11. 一道Python题目,求解答!
  12. 一道Python題目,求解答!
  13. Un problème Python, s'il vous plaît!
  14. C'est génial! 11 points de connaissance du dictionnaire Python pour le décollage!
  15. Python Functional Programming, This is enough!
  16. 在python中beta分布的问题?
  17. 一个python习题,没有什么头绪,是关于进制的转换和绘制的,想了几天了,不仅仅是2,8,16这种常见的进制转换
  18. Un exercice Python, qui n'a pas beaucoup d'idées, est sur la conversion et le rendu décimaux et a pensé pendant quelques jours, pas seulement 2, 8, 16 cette conversion décimale commune
  19. Un problème avec la distribution bêta en python?
  20. python实现简单的读取excel 内容,报错
  21. L'implémentation Python lit simplement le contenu d'Excel et signale les erreurs
  22. 用Python定义一个函数,接收n个数字,求这些参数数字的和
  23. Définissez une fonction en python, recevez n nombres et additionnez ces nombres de paramètres
  24. 上电Python写文件后,再断电后导致文件内容丢失
  25. 上電Python寫文件後,再斷電後導致文件內容丟失
  26. Une fois que Python est allumé pour écrire des fichiers, le contenu des fichiers est perdu après une panne de courant
  27. python套接字编程报错:ConnectionResetError: [WinError 10054] 远程主机强迫关闭了一个现有的连接。
  28. 【Python从入门到精通】(二)怎么运行Python呢?有哪些好的开发工具(PyCharm)
  29. 【Python从入门到精通】(二)怎么运行Python呢?有哪些好的开发工具(PyCharm)
  30. Python语法1
  31. 2018年度最受推荐的10本Python书籍(初学者必看)
  32. Les 10 livres Python les plus recommandés en 2018 (obligatoire pour les débutants)
  33. Syntaxe Python 1
  34. Python语法1
  35. 在python 运行celery时候 AttributeError: 'NoneType' object has no attribute 'Redis'错误
  36. Attributeerror: 'nonetype' Object has no attribute 'redis' Error when Celery is running in Python
  37. Syntaxe Python 1
  38. Python celery is a plug-in that focuses on distributed asynchronous task processing and task scheduling!
  39. Python celery is a plug-in that focuses on distributed asynchronous task processing and task scheduling!
  40. 在python,使用scrapy爬虫框架
  41. It's time for everyone to see your blog written in Django (including deployment tutorial video)
  42. Python扩展速记符 要求用for循环,if语句
  43. Python擴展速記符 要求用for循環,if語句
  44. Le sténographe d'extension Python nécessite une boucle pour, si instruction
  45. Python+人工智能就业班v5.0wumi
  46. python编程技术的题目,希望能得到解答
  47. Pandas determines the header row dynamically
  48. 关于#python#的问题:模拟登陆后能获取到cookie,就是cookie一天就过期
  49. pandas为dataframe添加新的数据行(rows)、在dataframe后面纵向添加一行数据(数据为列表list形式)、列有不匹配将会使用NA值进行填补
  50. pandas使用组合条件筛选、过滤数据行
  51. 热烈祝贺1024,求解Python3.10闪退问题
  52. Python基础题练习题库有没呢?
  53. python构建神经网络,正向和反向传播
  54. python爬虫输入数字翻页才成功,用变量代替不成功,为什么?
  55. 【Python 爬虫】 2、HTTP基本原理
  56. 【Python 爬虫】 1、爬虫基础概念
  57. Python中如何用find函数计数?
  58. 一文搞懂Python装饰器
  59. python数据结构之递归
  60. 关于#python#的问题:为什么这个open函数会报错