python-模块的打包与发布你会了吗?

19 篇文章 5 订阅

模块的打包与发布

编写一个模块,实现以下功能:
使用Python生成N个激活码,激活码要求为32位由A-Z 0-9组成的字符串
N由用户输入(注意判断输入是否合法)
将文件发布并安装到自己的机器,将激活码放到文件中。

详细过程

注意:以下步骤按照顺序一步一步来
1.在一个纯净的目录下(也就是一个空的目录下)创建一个modpack3目录 
# [root@zabbix scpython]# ls
# [root@zabbix scpython]# mkdir modpack3
2.在modpack3目录下,新建__init__.py 和 syq.py
# [root@zabbix scpython]# cd modpack3
# [root@zabbix modpack3]# touch __init__.py
# [root@zabbix modpack3]# touch syq.py
# [root@zabbix modpack3]# vim syq.py
# import random
# import string
# N = input("请输入你要生成的激活码个数:")
# if N.isdigit():
#     N = int(N)
# else:
#     print("输入的不是整数!")
# for i in range(N):           #从A-Z 0-9序列中随机获取32个长度的片断
#     code = random.sample(string.ascii_uppercase + string.digits, 32)
#     with open("atcode.txt", "a+", encoding="utf-8") as fp:
#         fp.write(''.join(code) + '\n')
# print(f"{N}个激活码已生成!")

3.回到上级目录,创建setup.py
# [root@zabbix modpack3]# cd ..
# [root@zabbix scpython]# touch setup.py
# [root@zabbix scpython]# vim setup.py
# from setuptools import setup, find_packages
#
# setup(
#    #包名
#    name = "modtest",
#    #官网
#    url = "http://www.abc.com",
#    #版本
#    version = "0.0.1",
#    #指定要打包的模块和包
#    packages = find_packages(),
#    #作者
#    author = "sc",
#    #邮箱
#    author_email = "123456@qq.com",
#    #依赖
#    install_requires = ['xlrd>=1.1.0'],
#    #描述信息
#    description = "this is test pack"
# )
4.运行python3 setup.py check  进行语法检查
# [root@zabbix scpython]# python3 setup.py check
# running check
5.运行python3 setup.py sdist  生成tar.gz压缩包
# [root@zabbix scpython]# python3 setup.py sdist
# running sdist
# .............

6.安装 
进入dist目录,运行pip3 install modtest-0.0.1.tar.gz
# [root@zabbix scpython]# ls
# dist  modpack3  modtest.egg-info  setup.py
# [root@zabbix scpython]# cd dist
# [root@zabbix dist]# ls
# modtest-0.0.1.tar.gz
# [root@zabbix dist]# pip3 install modtest-0.0.1.tar.gz
# ....................................
# Successfully installed modtest-0.0.1

7.测试
随便进入一个目录运行python3
出现以下效果说明成功了
# [root@zabbix dist]# cd /lianxi
# [root@zabbix lianxi]# python3
# >>> from modpack3 import syq
# 请输入你要生成的激活码个数:10
# 10个激活码已生成!
# >>> fp = open("atcode.txt")
# >>> fp.readlines()
# ['9HEM6R5BDCOZ31UGKA0QN2VL7J8IWXSF\n', 'D4EIFU6SPW2JQLTM8XV37RO1HGA9YB0N\n', 'V9F2K58PRNGO013YXIWQZBLAUJCTD6M7\n', 'HF8RY6D3LI2S9E51XZ4CUQWMVGT7BJ0K\n', 'R6954EOHVGDKBW0AML73UNYPZSFT8CQ1\n', 'XTPDESMRIJUAWFQL648NB209GHZO1C5V\n', 'VTYFULA2QH51D3G0Z7JB4RSCPE9KM8NX\n', 'CD1XHUJ7VQN0FK86POBTWSEL9YM5A4Z2\n', '13HU5T9NSF7MGYCAWLRD4XVQBK608E2Z\n', '83DOPANQ7UTYIFSB5E2G9VRKJCXZ1MW6\n']

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值