# 依赖管理
# 生成requirements.txt文件
pip freeze > requirements.txt
# 安装requirements.txt依赖
切换到虚拟环境控制台后再执行才能将包导入到虚拟环境
pip install -r requirements.txt
pip install --no-cache-dir -r requirements.txt
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
# Jupyter 编辑器
- pip install jupyter
- jupyter notebook // 运行jupyter
- http://localhost:8888/tree //进入网站编辑
# 打包 模块发布
打包为*.whl文件(wheel轮子)可引入其他项目或上传到公共仓库用pip命令下载
需要setuptools 默认模块已安装
- 打包
根目录创建setup.py文件
python setup.py sdist bdist_wheel
在dist目录生成tar.gz(sdist) 和whl包(bdist_wheel)
会有build目录生成
使用
直接拷贝解压处理
直接进行模块的安装
python setup.py install
会在venv中"site-packages"m目录下生成*.egg文件
pypi项目发布
pypi.org注册
pip install twine
Windows用户根目录下创建.pypirc文件保存用户信息
[pypi]
username=登录用户
password=登录密码
twine upload dist/* // dist是*.whl文件目录
# 环境配置
# 虚拟环境
# 1. 配置虚拟环境时需要先有依赖
pip install virtualenv #下载到公共目录中了
# 2. 在项目中生成虚拟环境
virtualenv venv # 纯净的虚拟环境
# 3. 激活虚拟环境
venv\Scripts\activate.bat
# 4. 退出虚拟环境
venv\Scripts\deactivate.bat
然后在设置项目解释器里面配置解释器路径
5. pycharm里面设置里配置解释器路径
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
# 镜像源
# 查看当前源
pip config list
pip config list -v
# 常用镜像源
清华:https://pypi.tuna.tsinghua.edu.cn/simple
阿里云:http://mirrors.aliyun.com/pypi/simple/
中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/
华中理工大学:http://pypi.hustunique.com/
山东理工大学:http://pypi.sdutlinux.org/
豆瓣:http://pypi.douban.com/simple/
#####手动添加镜像源
pip install 下载的模块名 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install -i https://pypi.douban.com/simple/ pyinstaller #豆瓣源
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pyinstaller #清华源
# 永久配置镜像源
# 如果你只想为当前用户设置,你也可以去掉下面的"--global"选项
pip config --global set global.index-url https://mirrors.aliyun.com/pypi/simple/
pip config --global set install.trusted-host mirrors.aliyun.com
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# pip
# 查看pip 默认安装位置
python -m site
# 修改pip 默认安装位置
PS C:\Users\Administrator> python -m site -help
D:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site.py [--user-base] [--user-site]
# 修改 site.py里面路径
USER_SITE = "D:\ProgramData\Anaconda3\lib\site-packages"
USER_BASE = "D:\ProgramData\Anaconda3\Scripts"
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
pip --help
pip search pymysql //命令废弃
pip install pymysql
pip install --upgrade pymysql
py download pymysql //当前位置下载whl文件,可将后缀改为zip后解压看到文件内容
pip list // 已经安装的模块
pip list --outdated
pip uninstall pymysql -y //卸载 -y可以免去手工确认
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
# 目录规范
第一种:
工程
- bin (程序入口)
- conf (配置文件setting)
- db (数据库)
- lib (公共类库,基类之类的)
- log (日志目录)
- src (逻辑目录)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
第二种:
项目名|-- bin
| |-- 启动脚本.py
|
|-- 项目名
| |-- tests
| | |-- __init__.py
| | |-- test_main.py
| |
| |-- __init__.py
| |-- main.py
|-— conf
|—- logs
|-- docs
| |-- conf.py
| |-- abc.rst
|
|-- setup.py
|-- requirements.txt
|-- README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
第三种:
Python通用目录结构
ProjectName
│ readme 项目说明文档
│ requirements.txt 存放依赖的外部Python包列表
│ setup.py 安装、部署、打包的脚本
├─ bin 存放脚本,执行文件等
│ └─ projectname
├─ docs 文档和配置
│ └─ abc.rst
│ └─ conf.py 配置文件
└─ projectname 工程源码(包括源码、测试代码等)
│ main.py 程序入口
│ init.py
└─ tests 测试代码
└─ test_main.py
└─ init.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
第四种:
1,bin目录:是整个应用程序的执行文件目录,其中start.py文件是启动入口
2,conf目录:是整个应用程序的配置文件目录,config.yaml是其中一个配置文件
3,core目录:是整个应用程序的核心模块,core.py是核心业务逻辑脚本文件
4,db目录:是整个应用程序的数据库文件目录
5,lib目录:是整个应用程序的通用功能脚本和第三方应用文件存放目录
6,log目录:是整个应用程序的日志文件目录
7,res目录:是整个应用程序的图标、图片、ui等目录
8,tests目录:是整个应用程序的测试文件目录
9,venv-win32目录:是整个应用程序的32位虚拟环境目录,用于运行和打包32应用程序
10,venv-win64目录:是整个应用程序的64位虚拟环境目录,用于运行和打包64应用程序
11,readme.txt:项目说明文档
12,requirements.txt:用于存放整个应用依赖的外部Python包列表
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
Foo/
|-- core/ # 存放业务逻辑相关代码
| |-- core.py
|
|-- api/ # 存放接口文件,接口主要用于为业务逻辑提供数据操作。
| |-- api.py
|
|-- db/ # 存放操作数据库相关文件,主要用于与数据库交互
| |-- db_handle.py
|
|-- lib/ # 存放程序中常用的自定义模块
| |-- common.py
|
|-- conf/ # 存放配置文件
| |-- settings.py
|
|-- run.py # 程序的启动文件,一般放在项目的根目录下,因为在运行时会默认将运行文件所在的文件夹作为sys.path的第一个路径,这样就省去了处理环境变量的步骤
|-- setup.py #安装、部署、打包的脚本。
|-- requirements.txt # 存放软件依赖的外部Python包列表。
|-- README # 项目说明文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# 文本规范检测
- pylint第三方组件包, 可在pycharm配置鼠标右键执行文件
pip install pylint pylint unit.py //代码检查文件
flake8 官方测试包
pip install flake8
flake8 test.py
← docker安装python 模块 →