Python开发环境 [Anaconda、PyInstaller、Enigma Virtual Box]
- Anaconda
- Anaconda安装搭建Python环境
- Anaconda命令
- Visual Studio Code
- Visual Studio Code中Python设置
- Visual Studio Code中安装PyQt5
- Visual Studio Code中使用Qt Designer
- Visual Studio Code中Anaconda切换虚拟环境
- Python打包发布.exe可执行文件
- Pyinstaller
- Enigma Virtual Box
- python镜像源
Anaconda
Anaconda安装搭建Python环境
- 官网下载Anaconda
anaconda官网 - 安装Anaconda
- 设置系统环境变量
按照实际安装路径新建填写红框环境变量 - 验证环境是否正常运行
WIN+R输入cmd
conda --version
python --version
pip --version
显示版本信息即为正常
Anaconda命令
- 查看版本:
- conda --version
- conda -V
- 检查更新conda:
- conda update conda
- 查看已安装的包:
- conda list
- 查看已创建的虚拟环境:
- conda env list
- conda info -e
- conda env -h(查看环境管理命令帮助)
- 创建虚拟环境(Python):
- conda create -n your_env_name python=x.x
- 创建虚拟环境名为your_env_name。
- 创建python版本为x.x。
- your_env_name文件可以在Anaconda安装目录envs文件下找到。
- 激活或者切换虚拟环境:
- activate your_env_name:Windows系统环境
- source activate your_env_nam: Linux系统环境
- 关闭虚拟环境(即从当前环境退出返回使用PATH环境中的默认python版本):
- deactivate env_name 或者activate root切回root环境
- source deactivate :Linux系统环境
- 删除虚拟环境:
- conda remove -n your_env_name --all
- 对虚拟环境中安装额外的包:
- conda install -n your_env_name [package]
- conda install -n your_env_name [package==version]
- 删除环境钟的某个包
- conda remove --name $your_env_name $package_name
- 设置国内镜像:
- 添加Anaconda的TUNA镜像:
- conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
- 恢复默认镜像:
- conda config --remove-key channels
- 设置搜索时显示通道地址:
- conda config --set show_channel_urls yes
- conda升级后释放空间:
在升级完成之后,我们可以使用命令来清理一些无用的包以释放一些空间:
- conda clean -p删除没有用的包
- conda clean -t删除保存下来的压缩文件(.tar)
Visual Studio Code
Visual Studio Code中Python设置
Shift+Ctrl+P顶部输入框输入settings.json选择打开工作区设置
安装实际安装路径设置python相关配置即可
.vscode/settings.json
{
"python.pythonPath": "C:\\Users\\syl\\anaconda3\\python.exe",
"python.autoComplete.extraPaths": [
"C:\\Users\\syl\\anaconda3\\Scripts",
"C:\\Users\\syl\\anaconda3\\Lib\\site-packages"
],
"python.analysis.extraPaths": [
"C:\\Users\\syl\\anaconda3\\Scripts",
"C:\\Users\\syl\\anaconda3\\Lib\\site-packages"
]
}
Visual Studio Code中安装PyQt5
PyQt5模块:
- pip install PyQt5 -i https://pypi.tuna.tsinghua.edu.cn/simple
- pip install PyQt5-tools -i https://pypi.tuna.tsinghua.edu.cn/simple
PyQt5自动补全: - pip install PyQt5-stubs -i https://pypi.tuna.tsinghua.edu.cn/simple
Visual Studio Code中使用Qt Designer
Visual Studio Code扩展商店搜索“PYQT Integration”找到并安装之后就可以使用Qt Designer设计UI界面了
资源管理器右键选择:
PYQT:New Form创建以.ui为后缀的Qt Designer界面文件:
PYQT:Preview预览窗口界面效果
PYQT:Edit In Designer在Qt Designer中编辑已创建的.ui文件
PYQT:Comple Form编译已创建的.ui文件(会生成Ui_xxx.py文件以便导入到python代码使用)
Visual Studio Code中Anaconda切换虚拟环境
VSCOD终端默认是PowerShell运行conda命令会有冲突,导致conda切换环境无效。
需要报VSCODE改为CMD命令行运行即可。
Ctrl+Shift+P 输入:Terminal:Select Default Profile =>回车
选择CMD
Python打包发布.exe可执行文件
使用python编写的代码最终需要打包成.exe可执行文件才能发布供普通用户使用。
Pyinstaller
使用 PyInstaller 将Python程序生成可直接运行的程序,这个程序就可以被分发到对应的 Windows 或 Mac OS X 平台上运行。
- 安装
pip install pyinstaller - pyinstaller参数详解
参数 | 描述 |
-F,-onefile | 产生单个的可执行文件 |
-D,–onedir | 产生一个目录(包含多个文件)作为可执行程序 |
-a,–ascii | 不包含 Unicode 字符集支持 |
-d,–debug | debug 版本的可执行文件 |
-w,–windowed,–noconsolc | 指定程序运行时不显示命令行窗口(仅对 Windows 有效) |
-c,–nowindowed,–console | 指定使用命令行窗口运行程序(仅对 Windows 有效) |
-o DIR,–out=DIR | 指定 spec 文件的生成目录。如果没有指定,则默认使用当前目录来生成 spec 文件 |
-p DIR,–path=DIR | 设置 Python 导入模块的路径(和设置 PYTHONPATH 环境变量的作用相似)。也可使用路径分隔符(Windows 使用分号,Linux 使用冒号)来分隔多个路径 |
-n NAME,–name=NAME | 指定项目(产生的 spec)名字。如果省略该选项,那么第一个脚本的主文件名将作为 spec 的名字 |
pyinstaller -F xxx.py (xxx.py为项目主程序)
pyinstaller -F -w -i icon.ico main.py -i 表示icon.ico作为图标
pyinstaller -D xxx.py (xxx.py为项目主程序)
- 打包成单独可执行文件
- cd到项目路径
- pyinstaller -F xxx.py (xxx.py为项目主程序)
生成build和dist目录,以及xxx.spec文件
dist目录下的xxx.exe即为可执行文件
这种方式打包的exe可执行文件有是会因缺少动态库无法运行
- 打包成多个文件可执行文件(而不是只有一个可执行文件,运行的时候每个文件都不能少,特点:文件小,运行速度快。缺点:文件多)
- cd到项目路径
- pyinstaller -D xxx.py (xxx.py为项目主程序)
- 打包32位和64位exe
有时需要打包32位或64位的exe,打包的exe是多少位的取决于python的环境版本是多少位的,python版本是32位打包的exe是32位,同样64位的版本打包的exe是64位的。
查看当前Python版本是32位还是64位 - 打包的exe文件太大的问题
- pyinstaller会把python环境中的很多项目没有用到的包都一起打包进去,这样就增大了exe的大小了
- 解决方法:使用anaconda创建一个单独干净的虚拟环境,然后在这个单独环境里安装需要用到的包,然后再对项目进行打包。
Enigma Virtual Box
使用pyinstaller打包exe如下弊端:
1.pyinstaller -D:生成一个文件夹,里面是多文件模式,启动快。
2.pyinstaller -F:仅仅生成一个文件,不暴露其他信息,启动较慢。
若想既要仅生成一个文件又要运行速度快,可以通过如下方法解决:
- 先用pyinstaller -D命令生成多文件可执行文件。
- 再用Enigma Virtual Box打包成一个可执行文件。
- 安装
下载Enigma Virtual Box英文网站下载Enigma Virtual Box中文网站 The Enigma Protector,32-bit version:专业的软件授权保护系统
The Enigma Protector,64-bit version:专业的软件授权保护系统
Enigma Virtual Box: 免费 - 打包exe文件
- cd到项目路径
- pyinstaller -D -w xxx.py (xxx.py为项目主程序)
- 使用Enigma Virtual Box打包exe文件
注:在打包之前可以先运行测试下pyinstaller生成的exe是否可以正常运行,如缺少dll库文件之类的问题,可以找到缺少的文件拷贝到pyinstaller生成的目录下,测试运行正常了在用Enigma Virtual Box打包最终的exe文件。
python镜像源
- http://pypi.douban.com/simple/ 豆瓣(推荐)
- http://mirrors.aliyun.com/pypi/simple/ 阿里(推荐)
- http://pypi.hustunique.com/simple/ 华中理工大学
- http://pypi.sdutlinux.org/simple/ 山东理工大学
- http://pypi.mirrors.ustc.edu.cn/simple/ 中国科学技术大学
- https://pypi.tuna.tsinghua.edu.cn/simple/ 清华大学(推荐)
- http://pypi.hustunique.com/ 华中科技大学
- http://mirrors.cloud.tencent.com/pypi/simple 腾讯
- https://repo.huaweicloud.com/repository/pypi/simple/ 华为