正所谓“工欲善其事,必先利其器”。推荐几个常用的、且非常方便的Python扩展库

1、pqi

pqi解决pip安装速度较慢的问题

pip安装默认的软件源是国外的,下载起来速度很慢,而将软件源换成国内的镜像源之后,可以提高下载速度。手动编辑源文件比较麻烦,pqi则可以帮助我们直接切换软件源。

  • 安装pip install pqi

  • 使用方法

Usage:
  pqi ls
  pqi use <name>
  pqi show
  pqi add <name> <url>
  pqi remove <name>
  pqi (-h | --help)
  pqi (-v | --version)
Options:
  -h --help        Show this screen.
  -v --version     Show version.

查看当前的pip软件源pqi show

Current source is aliyun(https://mirrors.aliyun.com/pypi/simple/).

pqi中内置了5个软件源pqi ls

pypi 	 https://pypi.python.org/simple/
tuna 	 https://pypi.tuna.tsinghua.edu.cn/simple
douban 	 http://pypi.douban.com/simple/
aliyun 	 https://mirrors.aliyun.com/pypi/simple/
ustc 	 https://mirrors.ustc.edu.cn/pypi/web/simple

切换软件源pqi use [url name],比如 pqi use douban,这样再查看软件源粉时候就发现已经切换了。

2、pipreqs

pipreqs可以生成Python依赖包清单,也就是导出requirements.txt文件

pip freeze > requirements.txt的功能类似,但pipreqs只导出指定项目所依赖的组件及其版本👌,相比于前者导出当前python环境下所有安装的组件,pipsegs的导出会更轻量化。

  • 安装pip install pipreqs
  • 使用方法

pipreqs 项目路径,比如pipreqs ./

  • 对比一下freeze和pipreqs
pip listpip freeze > requirements.txtpipreqs ./
aiofiles 23.1.0
altair 4.2.2
anyio 3.6.2
attrs 22.2.0
blinker 1.5
cachetools 5.3.0
certifi 2022.12.7
charset-normalizer 3.1.0
ci-info 0.3.0
click 8.1.3
configobj 5.0.8
configparser 5.3.0
decorator 5.1.1
entrypoints 0.4
etelemetry 0.3.0
filelock 3.10.7
fitz 0.0.1.dev2
frontend 0.0.3
future 0.18.3
gitdb 4.0.10
GitPython 3.1.31
h11 0.14.0
httplib2 0.22.0
idna 3.4
importlib-metadata 6.1.0
isodate 0.6.1
itsdangerous 2.1.2
Jinja2 3.1.2
jsonschema 4.17.3
looseversion 1.1.2
lxml 4.9.2
markdown-it-py 2.2.0
MarkupSafe 2.1.2
mdurl 0.1.2
networkx 3.0
nibabel 5.0.1
nipype 1.8.5
numpy 1.24.2
packaging 23.0
pandas 1.5.3
pathlib 1.0.1
Pillow 9.4.0
pip 22.0.2
protobuf 3.20.3
prov 2.0.0
pyarrow 11.0.0
pydeck 0.8.0
pydot 1.4.2
Pygments 2.14.0
Pympler 1.0.1
PyMuPDF 1.21.1
pyparsing 3.0.9
pyrsistent 0.19.3
python-dateutil 2.8.2
pytils 0.4.1
pytz 2022.7.1
pytz-deprecation-shim 0.1.0.post0
pyxnat 1.5
rdflib 6.3.1
requests 2.28.2
rich 13.3.2
scipy 1.10.1
semver 2.13.0
setuptools 59.6.0
simplejson 3.18.4
six 1.16.0
smmap 5.0.0
sniffio 1.3.0
starlette 0.26.1
stqdm 0.0.5
streamlit 1.20.0
toml 0.10.2
tools 0.1.9
toolz 0.12.0
tornado 6.2
tqdm 4.65.0
traits 6.3.2
typing_extensions 4.5.0
tzdata 2022.7
tzlocal 4.3
urllib3 1.26.15
uvicorn 0.21.1
validators 0.20.0
watchdog 3.0.0
wheel 0.37.1
zipp 3.15.0
aiofiles==23.1.0
altair==4.2.2
anyio==3.6.2
attrs==22.2.0
blinker==1.5
cachetools==5.3.0
certifi==2022.12.7
charset-normalizer==3.1.0
ci-info==0.3.0
click==8.1.3
configobj==5.0.8
configparser==5.3.0
decorator==5.1.1
entrypoints==0.4
etelemetry==0.3.0
filelock==3.10.7
fitz==0.0.1.dev2
frontend==0.0.3
future==0.18.3
gitdb==4.0.10
GitPython==3.1.31
h11==0.14.0
httplib2==0.22.0
idna==3.4
importlib-metadata==6.1.0
isodate==0.6.1
itsdangerous==2.1.2
Jinja2==3.1.2
jsonschema==4.17.3
looseversion==1.1.2
lxml==4.9.2
markdown-it-py==2.2.0
MarkupSafe==2.1.2
mdurl==0.1.2
networkx==3.0
nibabel==5.0.1
nipype==1.8.5
numpy==1.24.2
packaging==23.0
pandas==1.5.3
pathlib==1.0.1
Pillow==9.4.0
protobuf==3.20.3
prov==2.0.0
pyarrow==11.0.0
pydeck==0.8.0
pydot==1.4.2
Pygments==2.14.0
Pympler==1.0.1
PyMuPDF==1.21.1
pyparsing==3.0.9
pyrsistent==0.19.3
python-dateutil==2.8.2
pytils==0.4.1
pytz==2022.7.1
pytz-deprecation-shim==0.1.0.post0
pyxnat==1.5
rdflib==6.3.1
requests==2.28.2
rich==13.3.2
scipy==1.10.1
semver==2.13.0
simplejson==3.18.4
six==1.16.0
smmap==5.0.0
sniffio==1.3.0
starlette==0.26.1
stqdm==0.0.5
streamlit==1.20.0
toml==0.10.2
tools==0.1.9
toolz==0.12.0
tornado==6.2
tqdm==4.65.0
traits==6.3.2
typing_extensions==4.5.0
tzdata==2022.7
tzlocal==4.3
urllib3==1.26.15
uvicorn==0.21.1
validators==0.20.0
watchdog==3.0.0
zipp==3.15.0
PyMuPDF==1.21.1
streamlit==1.20.0

3、Streamlit

Streamlit主要用来创建App,并且可以方便的和Python结合以及部署。相关的安装使用可以参考之前的文章

{% link Streamlit App创建,Guo Wang,https://King-Key.github.io/posts/34479.html%}

{% link Streamlit App多页面运行,Guo Wang,https://King-Key.github.io/posts/22558.html%}

{% link streamlit cloud部署一个streamlit App,Guo Wang,https://King-Key.github.io/posts/cda857c1.html%}

4、tqdm

tqdm是一个进度条模块

  • 安装pip install tqdm
  • 使用方法,在Python文件中直接引入使用即可

官方demo演示