一些 Python 工具模块。如:
tqdm:终端的进度条retry:重试操作argparse:命令行参数与选项解析的标准模块,相比于带参数,更喜欢配置文件。copy:【标准库】浅层 shallow 和深层 deep 复制操作locale:【标准库】Python 的国际化和本地化支持库atexit:内置模块,在解释器正常终止时自动执行一些程序pygments:代码高亮神器http.server:【标准库】HTTP 服务器turtle:【标准库】海龟绘图typing:【标准库】类型标注支持emoji:使用 emoji 表情homeassistant:家庭自动化,智能家居必备
概述
- 人生苦短,活用工具
tqdm
tqdm:终端的进度条
1 | import time |
retry
retry:重试操作
1 | from retry import retry |
argparse
argparse:命令行参数与选项解析的标准模块,相比于带参数,更喜欢配置文件。
- 用户友好,为程序进程进行参数定义,解析 sys.argv,自动生成帮助及错误参数提示。
- optional arguments:- 短参数,– 长参数,解析后值保存在 args.verbosity 中
1 | import argparse |
1 |
ArgumentParser 说明:
- prog:即运行程序的名称,默认取 sys.argv[0] 的值,可以修改为指定的名称
- usage:指定 usage 信息的内容及格式,默认是根据你添加的信息自动生成的,可以自定义修改为指定的内容
- description:这个程序的功能概述
- epilog:在整个帮助信息最后添加的附加信息
- parents:用于定义一些公共的信息供子类调用
- formatter_class:整个信息的类定义,主要包含三个类,每个类的功能如下:
- class argparse.RawDescriptionHelpFormatter # 如何显示文本描述
- class argparse.RawTextHelpFormatter # 如何显示文本描述
- class argparse.ArgumentDefaultsHelpFormatter # 自定添加参数信息
- prefix_chars:自定义参数个前缀类型
fromfile_prefix_chars:指定文件替代命令行输入参数的方式
argument_default:
conflict_handler:检测是否存在相同的参数选项,不加该参数直接报错,添加该参数可以兼容(conflict_handler=’resolve’)
add_help: 设置是否显示帮助信息那表之类(默认显示)
parser.add_argument 参数
parser.add_argument() 方法用于向 ArgumentParser 对象中添加一个命令行参数。该方法的常用参数如下: - name or flags:表示参数的名称或缩写形式,可以是一个字符串或一个字符串列表。当使用字符串时,表示参数的名称,当使用字符串列表时,列表中的第一个元素表示参数的缩写形式,第二个元素表示参数的名称。
- action:表示参数的动作类型,可以是一个字符串或一个 Action 对象。常用的字符串类型包括 ‘store’(存储参数值)、’store_true’(存储 True)、’store_false’(存储 False)、’append’(将多个参数值存储到列表中)等。Action 对象可以自定义参数处理方式,例如 store_const、count、help 等。
- nargs:表示参数的数量,可以是一个整数、’?’、’‘ 或 ‘+’。其中,整数表示参数的数量,’?’ 表示参数可以出现 0 次或 1 次,’‘ 表示参数可以出现任意次数,’+’ 表示参数至少出现一次。
- const:表示使用 store_const 动作类型时的常量值。
- default:表示参数的默认值。
- type:表示参数值的类型,可以是一个类型函数或一个字符串。常用的类型函数包括 int、float、str、bool 等,当使用字符串时,表示使用内置的类型函数进行类型转换。
- choices:表示参数值的可选项,只有在可选项中的值才是合法的。
- required:表示参数是否是必选的。
- help:表示参数的帮助信息,当用户使用 –help 或 -h 参数时,会显示该信息。
- metavar:表示参数值在帮助信息中的显示名称,默认为参数的名称大写。
parser.add_subparsers() 方法用于向 ArgumentParser 对象中添加一个子命令字典,该字典包含多个子命令及其参数。该方法的常用参数如下: - title:表示子命令字典的标题,一般用于打印帮助信息。
- description:表示子命令字典的描述,一般用于打印帮助信息。
- prog:表示子命令字典的名称,一般用于打印帮助信息。
- parser_class:表示子命令字典使用的解析器类,一般使用默认值 argparse.ArgumentParser。
- action:表示子命令字典的动作类型,一般使用默认值 ‘store’。
- dest:表示子命令字典的变量名,用于保存用户选择的子命令。
- required:表示是否必须选择一个子命令,一般使用默认值 True。
- help:表示子命令字典的帮助信息,一般用于打印帮助信息。
copy
copy:【标准库】浅层 shallow 和深层 deep 复制操作
1 | import copy |
locale
locale:【标准库】Python 的国际化和本地化支持库
- 提供处理依赖于用户语言和位置的相关操作,
1 | import locale |
atexit
atexit:内置模块,在解释器正常终止时自动执行一些程序
- register 注册的相反顺序执行函数。例如注册 A、B、C,在解释器终止时按顺序 C,B,A 运行。
- But,如果程序是非正常 crash,或者通过 os._exit() 退出,注册的退出函数将不会被调用。
装饰器方式
1 | import os |
正常函数模块
1 | #!/usr/bin/env python |
1 | # 删除注册的函数 |
pygments
pygments:代码高亮神器
1 | # test.py |
1 | pip install pygments |
1 | html 中引用 css |
1 | from pygments import highlight |
http.server
http.server:【标准库】HTTP 服务器
turtle
turtle:【标准库】海龟绘图
typing
typing:【标准库】类型标注支持
emoji
emoji:使用 emoji 表情
1 | import emoji |
homeassistant
homeassistant:家庭自动化,智能家居必备
