很抱歉,您没有提供需要改写的句子。请提供您希望改写的句子,我将为您改写为一个长尾词的。
- 内容介绍
- 文章标签
- 相关推荐
本文共计1865个文字,预计阅读时间需要8分钟。
爸爸好,我是我,我是皮皮。一、前言,前几天老班长给我推荐了一个摸鱼库,居然是Python库,给我惊了一下,感觉应该挺有意思的。+ 在评论区的看到了【有想法】大佬的留言,如图所示:
大家好,我是我是皮皮。
一、前言
前几天吴老板给我推荐了一个摸鱼库,竟然是Python库,给我惊了一下,感觉应缺斯汀。
在评论区看到了大佬的留言,如下图所示:
大概意思是把自己写的代码,封装成Python库,人人都可用那种,这里给安排上,这篇文章就是讲如何打包发布的,一起来看看吧!
二、代码
首先准备好代码,这个代码,之前的文章就已经分享了,这里不再赘述,代码在这里了。
# -*- coding: utf-8 -*-import datetime
import click
from zhdate import ZhDate as lunar_date
def get_week_day(date):
week_day_dict = {
0: '星期一',
1: '星期二',
2: '星期三',
3: '星期四',
4: '星期五',
5: '星期六',
6: '星期天',
}
day = date.weekday()
return week_day_dict[day]
def time_parse(today):
distance_big_year = (lunar_date(today.year, 1, 1).to_datetime().date() - today).days
distance_big_year = distance_big_year if distance_big_year > 0 else (
lunar_date(today.year + 1, 1, 1).to_datetime().date() - today).days
distance_5_5 = (lunar_date(today.year, 5, 5).to_datetime().date() - today).days
distance_5_5 = distance_5_5 if distance_5_5 > 0 else (
lunar_date(today.year + 1, 5, 5).to_datetime().date() - today).days
distance_8_15 = (lunar_date(today.year, 8, 15).to_datetime().date() - today).days
distance_8_15 = distance_8_15 if distance_8_15 > 0 else (
lunar_date(today.year + 1, 8, 15).to_datetime().date() - today).days
distance_year = (datetime.datetime.strptime(f"{today.year}-01-01", "%Y-%m-%d").date() - today).days
distance_year = distance_year if distance_year > 0 else (
datetime.datetime.strptime(f"{today.year + 1}-01-01", "%Y-%m-%d").date() - today).days
distance_4_5 = (datetime.datetime.strptime(f"{today.year}-04-05", "%Y-%m-%d").date() - today).days
distance_4_5 = distance_4_5 if distance_4_5 > 0 else (
datetime.datetime.strptime(f"{today.year + 1}-04-05", "%Y-%m-%d").date() - today).days
distance_5_1 = (datetime.datetime.strptime(f"{today.year}-05-01", "%Y-%m-%d").date() - today).days
distance_5_1 = distance_5_1 if distance_5_1 > 0 else (
datetime.datetime.strptime(f"{today.year + 1}-05-01", "%Y-%m-%d").date() - today).days
distance_10_1 = (datetime.datetime.strptime(f"{today.year}-10-01", "%Y-%m-%d").date() - today).days
distance_10_1 = distance_10_1 if distance_10_1 > 0 else (
datetime.datetime.strptime(f"{today.year + 1}-10-01", "%Y-%m-%d").date() - today).days
time_ = [
{"v_": 5 - 1 - today.weekday(), "title": "周末"}, # 距离周末
{"v_": distance_year, "title": "元旦"}, # 距离元旦
{"v_": distance_big_year, "title": "过年"}, # 距离过年
{"v_": distance_4_5, "title": "清明节"}, # 距离清明
{"v_": distance_5_1, "title": "劳动节"}, # 距离劳动
{"v_": distance_5_5, "title": "端午节"}, # 距离端午
{"v_": distance_8_15, "title": "中秋节"}, # 距离中秋
{"v_": distance_10_1, "title": "国庆节"}, # 距离国庆
]
time_ = sorted(time_, key=lambda x: x['v_'], reverse=False)
return time_
@click.command()
def cli():
"""你好,摸鱼人,工作再累,一定不要忘记摸鱼哦 !"""
from colorama import init, Fore
init(autoreset=True) # 初始化,并且设置颜色设置自动恢复
print()
today = datetime.date.today()
now_ = f"{today.year}年{today.month}月{today.day}日"
week_day_ = get_week_day(today)
print(f'\t\t {Fore.GREEN}{now_} {week_day_}')
str_ = '''
你好,摸鱼人,工作再累,一定不要忘记摸鱼哦 !
有事没事起身去茶水间去廊道去天台走走,别老在工位上坐着。
多喝点水,钱是老板的,但命是自己的 !
'''
print(f'{Fore.RED}{str_}')
time_ = time_parse(today)
for t_ in time_:
print(f'\t\t {Fore.RED}距离{t_.get("title")}还有: {t_.get("v_")}天')
tips_ = '''
[友情提示] 三甲医院 ICU 躺一天平均费用大概一万块。
你晚一天进 ICU,就等于为你的家庭多赚一万块。少上班,多摸鱼。\n
'''
print(f'{Fore.RED}{tips_}')
print(f'\t\t\t\t\t\t\t{Fore.YELLOW} 摸鱼办')
if __name__ == '__main__':
cli()
click 库的使用
注意到我们上面的文件代码用到了click库。
Python内置了一个Argparse的标准库用于创建命令行, 但使用起来有些繁琐,Click相比于Argparse可谓是小巫见大巫了。
安装
pip install clickclick 的简单使用
官方文档的入门例子:
import click@click.command()
@click.option('--count', default=1, help='Number of greetings.')
@click.option('--name', prompt='Your name', help='The person to greet.')
def hello(count, name):
"""Simple program that greets NAME for a total of COUNT times."""
for x in range(count):
click.echo('Hello %s!' % name)
if __name__ == '__main__':
hello()
@click.command()使函数hello成为命令行接口。
@click.option的第一个参数指定了命令行选项的名称。
click.echo方法和python内置的print方法相似。
使用方法:
打印10个皮老板。
Hello 皮老板!
Hello 皮老板!
Hello 皮老板!
Hello 皮老板!
Hello 皮老板!
Hello 皮老板!
Hello 皮老板!
Hello 皮老板!
Hello 皮老板!
Hello 皮老板!
setuptool 打包发布
安装依赖
pip install setuptoolspip install twine
打包上传
python setup.py sdisttwine upload dist/*
登录pypi账户并发布python库
setup.py 示例
from setuptools import setup, find_packagesdescription = '你好,摸鱼人,工作再累,一定不要忘记摸鱼哦! 有事没事起身去茶水间去廊道去天台走走,别老在工位上坐着。多喝点水,钱是老板的,但命是自己的!'
setup(
name='mofish', # 库名
version='1.0.0', # 版本号
description=description, # 短简介
long_description_content_type='text/markdown',
classifiers=[
'Development Status :: 4 - Beta',
'Environment :: Console',
'Intended Audience :: Developers',
'Intended Audience :: Information Technology',
'Intended Audience :: System Administrators',
'License :: OSI Approved :: MIT License',
'Programming Language :: Python',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3 :: Only',
'Programming Language :: Python :: 3.7',
'Programming Language :: Python :: 3.8',
'Programming Language :: Python :: 3.9',
'Topic :: Internet',
'Topic :: Software Development :: Libraries :: Python Modules',
'Topic :: System :: Clustering',
'Topic :: System :: Distributed Computing',
'Topic :: System :: Monitoring',
'Topic :: System :: Systems Administration',
],
python_requires='>=3.7', # py 版本限制
author='PY-GZKY', # 作者
author_email='341796767@qq.com', # 邮件
url='github.com/PY-GZKY/Mofish', # git
license='MIT', # 开源协议
packages=find_packages(), # 包
include_package_data=True,
entry_points="""
[console_scripts]
moyu=src.main:cli
""", # 启动命令行脚本的文件
install_requires=[
'click>=6.7',
'zhdate'
], # 限制安装库的版本
)
安装并使用
pip install mofishmoyu
代码仓库地址:
github.com/PY-GZKY/Mofish总结
大家好,我是皮皮。这篇文章主要是给大家盘点了一个Python库,基于这个库,本文介绍了如何把自己写的代码封装成Python库,打包上传,并且发布到pypi,到后面人人都可以用你的库。
最后感谢大佬给予的思路和代码支持,感谢大佬提的需求。
[友情提示] 三甲医院 ICU 躺一天平均费用大概一万块。你晚一天进 ICU,就等于为你的家庭多赚一万块。少上班,多摸鱼。
小伙伴们,快快用实践一下吧!如果在学习过程中,有遇到任何问题,欢迎加我好友,我拉你进Python学习交流群共同探讨学习。
本文共计1865个文字,预计阅读时间需要8分钟。
爸爸好,我是我,我是皮皮。一、前言,前几天老班长给我推荐了一个摸鱼库,居然是Python库,给我惊了一下,感觉应该挺有意思的。+ 在评论区的看到了【有想法】大佬的留言,如图所示:
大家好,我是我是皮皮。
一、前言
前几天吴老板给我推荐了一个摸鱼库,竟然是Python库,给我惊了一下,感觉应缺斯汀。
在评论区看到了大佬的留言,如下图所示:
大概意思是把自己写的代码,封装成Python库,人人都可用那种,这里给安排上,这篇文章就是讲如何打包发布的,一起来看看吧!
二、代码
首先准备好代码,这个代码,之前的文章就已经分享了,这里不再赘述,代码在这里了。
# -*- coding: utf-8 -*-import datetime
import click
from zhdate import ZhDate as lunar_date
def get_week_day(date):
week_day_dict = {
0: '星期一',
1: '星期二',
2: '星期三',
3: '星期四',
4: '星期五',
5: '星期六',
6: '星期天',
}
day = date.weekday()
return week_day_dict[day]
def time_parse(today):
distance_big_year = (lunar_date(today.year, 1, 1).to_datetime().date() - today).days
distance_big_year = distance_big_year if distance_big_year > 0 else (
lunar_date(today.year + 1, 1, 1).to_datetime().date() - today).days
distance_5_5 = (lunar_date(today.year, 5, 5).to_datetime().date() - today).days
distance_5_5 = distance_5_5 if distance_5_5 > 0 else (
lunar_date(today.year + 1, 5, 5).to_datetime().date() - today).days
distance_8_15 = (lunar_date(today.year, 8, 15).to_datetime().date() - today).days
distance_8_15 = distance_8_15 if distance_8_15 > 0 else (
lunar_date(today.year + 1, 8, 15).to_datetime().date() - today).days
distance_year = (datetime.datetime.strptime(f"{today.year}-01-01", "%Y-%m-%d").date() - today).days
distance_year = distance_year if distance_year > 0 else (
datetime.datetime.strptime(f"{today.year + 1}-01-01", "%Y-%m-%d").date() - today).days
distance_4_5 = (datetime.datetime.strptime(f"{today.year}-04-05", "%Y-%m-%d").date() - today).days
distance_4_5 = distance_4_5 if distance_4_5 > 0 else (
datetime.datetime.strptime(f"{today.year + 1}-04-05", "%Y-%m-%d").date() - today).days
distance_5_1 = (datetime.datetime.strptime(f"{today.year}-05-01", "%Y-%m-%d").date() - today).days
distance_5_1 = distance_5_1 if distance_5_1 > 0 else (
datetime.datetime.strptime(f"{today.year + 1}-05-01", "%Y-%m-%d").date() - today).days
distance_10_1 = (datetime.datetime.strptime(f"{today.year}-10-01", "%Y-%m-%d").date() - today).days
distance_10_1 = distance_10_1 if distance_10_1 > 0 else (
datetime.datetime.strptime(f"{today.year + 1}-10-01", "%Y-%m-%d").date() - today).days
time_ = [
{"v_": 5 - 1 - today.weekday(), "title": "周末"}, # 距离周末
{"v_": distance_year, "title": "元旦"}, # 距离元旦
{"v_": distance_big_year, "title": "过年"}, # 距离过年
{"v_": distance_4_5, "title": "清明节"}, # 距离清明
{"v_": distance_5_1, "title": "劳动节"}, # 距离劳动
{"v_": distance_5_5, "title": "端午节"}, # 距离端午
{"v_": distance_8_15, "title": "中秋节"}, # 距离中秋
{"v_": distance_10_1, "title": "国庆节"}, # 距离国庆
]
time_ = sorted(time_, key=lambda x: x['v_'], reverse=False)
return time_
@click.command()
def cli():
"""你好,摸鱼人,工作再累,一定不要忘记摸鱼哦 !"""
from colorama import init, Fore
init(autoreset=True) # 初始化,并且设置颜色设置自动恢复
print()
today = datetime.date.today()
now_ = f"{today.year}年{today.month}月{today.day}日"
week_day_ = get_week_day(today)
print(f'\t\t {Fore.GREEN}{now_} {week_day_}')
str_ = '''
你好,摸鱼人,工作再累,一定不要忘记摸鱼哦 !
有事没事起身去茶水间去廊道去天台走走,别老在工位上坐着。
多喝点水,钱是老板的,但命是自己的 !
'''
print(f'{Fore.RED}{str_}')
time_ = time_parse(today)
for t_ in time_:
print(f'\t\t {Fore.RED}距离{t_.get("title")}还有: {t_.get("v_")}天')
tips_ = '''
[友情提示] 三甲医院 ICU 躺一天平均费用大概一万块。
你晚一天进 ICU,就等于为你的家庭多赚一万块。少上班,多摸鱼。\n
'''
print(f'{Fore.RED}{tips_}')
print(f'\t\t\t\t\t\t\t{Fore.YELLOW} 摸鱼办')
if __name__ == '__main__':
cli()
click 库的使用
注意到我们上面的文件代码用到了click库。
Python内置了一个Argparse的标准库用于创建命令行, 但使用起来有些繁琐,Click相比于Argparse可谓是小巫见大巫了。
安装
pip install clickclick 的简单使用
官方文档的入门例子:
import click@click.command()
@click.option('--count', default=1, help='Number of greetings.')
@click.option('--name', prompt='Your name', help='The person to greet.')
def hello(count, name):
"""Simple program that greets NAME for a total of COUNT times."""
for x in range(count):
click.echo('Hello %s!' % name)
if __name__ == '__main__':
hello()
@click.command()使函数hello成为命令行接口。
@click.option的第一个参数指定了命令行选项的名称。
click.echo方法和python内置的print方法相似。
使用方法:
打印10个皮老板。
Hello 皮老板!
Hello 皮老板!
Hello 皮老板!
Hello 皮老板!
Hello 皮老板!
Hello 皮老板!
Hello 皮老板!
Hello 皮老板!
Hello 皮老板!
Hello 皮老板!
setuptool 打包发布
安装依赖
pip install setuptoolspip install twine
打包上传
python setup.py sdisttwine upload dist/*
登录pypi账户并发布python库
setup.py 示例
from setuptools import setup, find_packagesdescription = '你好,摸鱼人,工作再累,一定不要忘记摸鱼哦! 有事没事起身去茶水间去廊道去天台走走,别老在工位上坐着。多喝点水,钱是老板的,但命是自己的!'
setup(
name='mofish', # 库名
version='1.0.0', # 版本号
description=description, # 短简介
long_description_content_type='text/markdown',
classifiers=[
'Development Status :: 4 - Beta',
'Environment :: Console',
'Intended Audience :: Developers',
'Intended Audience :: Information Technology',
'Intended Audience :: System Administrators',
'License :: OSI Approved :: MIT License',
'Programming Language :: Python',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3 :: Only',
'Programming Language :: Python :: 3.7',
'Programming Language :: Python :: 3.8',
'Programming Language :: Python :: 3.9',
'Topic :: Internet',
'Topic :: Software Development :: Libraries :: Python Modules',
'Topic :: System :: Clustering',
'Topic :: System :: Distributed Computing',
'Topic :: System :: Monitoring',
'Topic :: System :: Systems Administration',
],
python_requires='>=3.7', # py 版本限制
author='PY-GZKY', # 作者
author_email='341796767@qq.com', # 邮件
url='github.com/PY-GZKY/Mofish', # git
license='MIT', # 开源协议
packages=find_packages(), # 包
include_package_data=True,
entry_points="""
[console_scripts]
moyu=src.main:cli
""", # 启动命令行脚本的文件
install_requires=[
'click>=6.7',
'zhdate'
], # 限制安装库的版本
)
安装并使用
pip install mofishmoyu
代码仓库地址:
github.com/PY-GZKY/Mofish总结
大家好,我是皮皮。这篇文章主要是给大家盘点了一个Python库,基于这个库,本文介绍了如何把自己写的代码封装成Python库,打包上传,并且发布到pypi,到后面人人都可以用你的库。
最后感谢大佬给予的思路和代码支持,感谢大佬提的需求。
[友情提示] 三甲医院 ICU 躺一天平均费用大概一万块。你晚一天进 ICU,就等于为你的家庭多赚一万块。少上班,多摸鱼。
小伙伴们,快快用实践一下吧!如果在学习过程中,有遇到任何问题,欢迎加我好友,我拉你进Python学习交流群共同探讨学习。

