docs
Python

知识点

  1. python 模块的入口文件是setup.py

技巧

记录了日常开发中遇到的各种问题和技巧

虚拟环境

  1. venv (opens in a new tab) 是 Python 3.3 之后内置的虚拟环境工具

  2. conda (opens in a new tab) 是 Anaconda 提供的虚拟环境工具miniconda (opens in a new tab): 占用更小

  3. Poetry: 类似 npm 的依赖管理,支持 lock 文件

镜像地址

https://pypi.tuna.tsinghua.edu.cn/simple (opens in a new tab)

pip install xxx -i https://pypi.tuna.tsinghua.edu.cn/simple

遇到的问题

  1. 模块依赖路径错误:在嵌套的目录中引用同目录文件 原因:项目是安装启动路径来匹配的。
# bad
from refresh import Refresh
# good
from a.b.refresh import Refresh
  1. 打包的whl文件,安装后一直找不到这个包。 原因:streamlit项目中的MANIFEST.in的路径错误,但是whl还是正确输出了,也没有报错。导致 debug 时间比较久。

pip

Nexus 3 (opens in a new tab): 管理 PyPIregistry

Pypiserver

使用 Docker 启动一个免认证的服务

docker run -d -p 8080:8080 -v ~/packages:/data/packages pypiserver/pypiserver:latest run -a . -P .