当前位置: 首页 > news >正文

Python开发环境(Visual Studio Code、Anaconda、PyInstaller、Enigma Virtual Box)

Python开发环境 [Anaconda、PyInstaller、Enigma Virtual Box]

  • Anaconda
    • Anaconda安装搭建Python环境
    • Anaconda命令
  • Visual Studio Code
    • Visual Studio Code中Python设置
    • Visual Studio Code中使用Qt Designer
  • Python打包发布.exe可执行文件
    • Pyinstaller
    • Enigma Virtual Box

Anaconda

Anaconda安装搭建Python环境

  1. 官网下载Anaconda
    anaconda官网
  2. 安装Anaconda
  3. 设置系统环境变量
    按照实际安装路径新建填写红框环境变量
    在这里插入图片描述
  4. 验证环境是否正常运行
    WIN+R输入cmd
    在这里插入图片描述

conda --version
python --version
pip --version
显示版本信息即为正常
在这里插入图片描述

Anaconda命令

  1. 查看版本:
  • conda --version
  • conda -V
  1. 检查更新conda:
  • conda update conda
  1. 查看已安装的包:
  • conda list
  1. 查看已创建的虚拟环境:
  • conda env list
  • conda info -e
  • conda env -h(查看环境管理命令帮助)
  1. 创建虚拟环境(Python):
  • conda create -n your_env_name python=x.x
    • 创建虚拟环境名为your_env_name。
    • 创建python版本为x.x。
    • your_env_name文件可以在Anaconda安装目录envs文件下找到。
  1. 激活或者切换虚拟环境:
  • activate your_env_name:Windows系统环境
  • source activate your_env_nam: Linux系统环境
  1. 关闭虚拟环境(即从当前环境退出返回使用PATH环境中的默认python版本):
  • deactivate env_name 或者activate root切回root环境
  • source deactivate :Linux系统环境
  1. 删除虚拟环境:
  • conda remove -n your_env_name --all
  1. 对虚拟环境中安装额外的包:
  • conda install -n your_env_name [package]
    • conda install -n your_env_name [package==version]
  1. 删除环境钟的某个包
  • conda remove --name $your_env_name $package_name
  1. 设置国内镜像:
  • 添加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
  1. 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中使用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代码使用)
在这里插入图片描述

在这里插入图片描述

Python打包发布.exe可执行文件

使用python编写的代码最终需要打包成.exe可执行文件才能发布供普通用户使用。

Pyinstaller

使用 PyInstaller 将Python程序生成可直接运行的程序,这个程序就可以被分发到对应的 Windows 或 Mac OS X 平台上运行。

  1. 安装
    pip install pyinstaller
  2. pyinstaller参数详解
参数描述
-F,-onefile产生单个的可执行文件
-D,–onedir产生一个目录(包含多个文件)作为可执行程序
-a,–ascii不包含 Unicode 字符集支持
-d,–debugdebug 版本的可执行文件
-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 的名字
  1. 打包成单独可执行文件
    1. cd到项目路径
    2. pyinstaller -F xxx.py (xxx.py为项目主程序)
      生成build和dist目录,以及xxx.spec文件
      dist目录下的xxx.exe即为可执行文件
      这种方式打包的exe可执行文件有是会因缺少动态库无法运行
  2. 打包成多个文件可执行文件(而不是只有一个可执行文件,运行的时候每个文件都不能少,特点:文件小,运行速度快。缺点:文件多)
    1. cd到项目路径
    2. pyinstaller -D xxx.py (xxx.py为项目主程序)
  3. 打包32位和64位exe
    有时需要打包32位或64位的exe,打包的exe是多少位的取决于python的环境版本是多少位的,python版本是32位打包的exe是32位,同样64位的版本打包的exe是64位的。
    查看当前Python版本是32位还是64位
    在这里插入图片描述
  4. 打包的exe文件太大的问题
  • pyinstaller会把python环境中的很多项目没有用到的包都一起打包进去,这样就增大了exe的大小了
  • 解决方法:使用anaconda创建一个单独干净的虚拟环境,然后在这个单独环境里安装需要用到的包,然后再对项目进行打包。

Enigma Virtual Box

使用pyinstaller打包exe如下弊端:
1.pyinstaller -D:生成一个文件夹,里面是多文件模式,启动快。
2.pyinstaller -F:仅仅生成一个文件,不暴露其他信息,启动较慢。
若想既要仅生成一个文件又要运行速度快,可以通过如下方法解决:

  • 先用pyinstaller -D命令生成多文件可执行文件。
  • 再用Enigma Virtual Box打包成一个可执行文件。
  1. 安装
    下载Enigma Virtual Box英文网站
    下载Enigma Virtual Box中文网站
    The Enigma Protector,32-bit version:专业的软件授权保护系统
    The Enigma Protector,64-bit version:专业的软件授权保护系统
    Enigma Virtual Box: 免费
    在这里插入图片描述
  2. 打包exe文件
    1. cd到项目路径
    2. pyinstaller -D -w xxx.py (xxx.py为项目主程序)
    3. 使用Enigma Virtual Box打包exe文件
      注:在打包之前可以先运行测试下pyinstaller生成的exe是否可以正常运行,如缺少dll库文件之类的问题,可以找到缺少的文件拷贝到pyinstaller生成的目录下,测试运行正常了在用Enigma Virtual Box打包最终的exe文件。
      在这里插入图片描述

相关文章:

Python开发环境(Visual Studio Code、Anaconda、PyInstaller、Enigma Virtual Box)

Python开发环境 [Anaconda、PyInstaller、Enigma Virtual Box] AnacondaAnaconda安装搭建Python环境Anaconda命令 Visual Studio CodeVisual Studio Code中Python设置Visual Studio Code中使用Qt Designer Python打包发布.exe可执行文件PyinstallerEnigma Virtual Box Anaconda…...

Unreal Engine 测试总结

Android 项目打包应选择哪种纹理格式?打包模式区别? 根据官网文档介绍,建议使用 ETC2:所有OpenGL 3.x 类型的设备都支持,并且支持alpha压缩 打包模式包括:内部测试阶段的开发模式,对外发布的发行…...

Air780EG —— 合宙4G定位解决方案

定位模式: 外部单片机控制模式(常见于AT固件客户): 开机 -> 搜星 -> 定位成功 -> 上报 -> 关机 780E自行控制模式(常见于二次开发客户,AT用户也可以使用): 开机 -> 搜星 -> 定位成功 -> 模块休眠,关闭GP…...

【算法刷题之数组篇(2)】

目录 1.leetcode-35. 搜索插入位置(简单)2.leetcode-74. 搜索二维矩阵(中等)3.leetcode-73. 矩阵置零(中等)4.leetcode-56. 合并区间(中等)5.leetcode-54. 螺旋矩阵(中等…...

chromedriver.exe 的所有版本下载地址

Chrome for Testing availability 上面的网址是V115 v116.... 以上的。 CNPM Binaries Mirror 上面这个是V115版本以下的。 这个文章没有任何实际价值,记录的原因是因为突然发现过去的py无法运行,原因是chrome浏览器偷偷升级到V115,于是找…...

C++ 网络编程项目fastDFS分布式文件系统(四)-fastCGI项目相关技术以及linux搜狗输入法相关问题。

目录 1. Nginx作为web服务器处理请求 2. http协议复习 Get方式提交数据 Post方式提交数据 3. fastCGI 3.1 CGI 3.2 fastCGI 3.3 fastCGI和spawn-fcgi安装 1. 安装fastCGI 2. 安装spawn-fcgi 3.4 nginx && fastcgi 4其他知识点 1. fastCGI环境变量 - fas…...

【HarmonyOS】服务卡片 API6 JSUI跳转不同页面

【引言】 “JS卡片支持为组件设置action,包括router事件和message事件,其中router事件用于应用跳。若设置router事件,则action属性值为"router";abilityName为卡片提供方应用的跳转目标Ability名;params中的…...

【linux】debian10安装vim

debian10.0上用apt vim安装vim提示依赖的版本冲突。后来发现是软件源没有添加更新源buster-updates。 以下是问答。 问:debian10怎么安装vim? 答: 在 Debian 10 系统上安装 Vim 的方法很简单,主要有以下两种: 1. 使用 apt 命令安装 bash sudo apt u…...

文件同步工具rsync

文章目录 作用特性安装命令服务端启动增加安全认证及免密登录 实时推送源服务器配置结合inotify实现实时推送 参数详解 学些过程中遇到的问题 作用 rsync是linux系统下的数据镜像备份工具。使用快速增量备份工具Remote Sync可以远程同步,支持本地复制,或…...

【嵌入式开发 Linux 常用命令系列 12 -- linux 下 log 输出重定向 详细介绍 】

文章目录 Linux 输出重定向使用背景Linux 重定向使用介绍 上篇文章:嵌入式开发 Linux 常用命令系列 11 – linux 下 任务与CPU绑定命令 taskset 详细介绍 Linux 输出重定向使用背景 在Linux中,输入和输出重定向是非常常见的操作,它们可以用…...

gin中关于参数注入问题

关于参数注入的问题 如果在开发中一旦发小参数没有按照既定的要求注入到结构体的话,这个时候就一定要看请求方式什么?如果是post请求、 前端—post—json{id:1,pageSize:10,page:1}———————————- 参数注入方法:ShouldBindJSON p…...

记录首次面试2023-08-18

人生第一次面试,大概一个小时左右。没有问我C的,上来一个数据库事务,虽然没有复习,但是还是能够记住一些,主要问的一些事务的隔离级别,以及都有什么作用,我是举例回答的,客户端A和客…...

【Apollo学习笔记】——规划模块TASK之LANE_CHANGE_DECIDER

文章目录 前言LANE_CHANGE_DECIDER功能简介LANE_CHANGE_DECIDER相关配置LANE_CHANGE_DECIDER总体流程LANE_CHANGE_DECIDER相关子函数PrioritizeChangeLaneUpdateStatusIsClearToChangeLaneHysteresisFilter 参考 前言 在Apollo星火计划学习笔记——Apollo路径规划算法原理与实…...

rabbitmq的死信队列

目录 成为死信的条件 消息TTL过期 队列达到最大长度 消息被拒 延迟队列 延迟队列使用场景 消息设置 TTL 队列设置 TTL 两者区别 producer 将消息投递到 broker 或者直接到 queue 里了, consumer 从 queue 取出消息 进行消费,但某些时候由…...

利用网络对拷工具进行系统安装与恢复

各学校计算机机房经常批量安装操作系统和应用软件。实现对批量计算机的安 装,应用较多的是使用 Symantec 的 ghost 企业版。但笔者采用的是网络还原精灵 (Net Recovery Genius)软件附带的网络对拷 Ncp.com 工具,利用它能够轻松实…...

opencv-python使用鼠标点击图片显示该点坐标和像素值IPM逆透视变换车道线二值化处理

OpenCV的鼠标操作 实现获取像素点的功能主要基于OpenCV的内置函数cv2.setMouseCallback(),即鼠标事件回调 setMouseCallback(winname, onMouse,userdata0) winname: 接收鼠标事件的窗口名称 onMouse: 处理鼠标事件的回调函数指针 userdata: 传给回调函数的用户数据…...

AIGC绘画:kaggle部署stable diffusion项目绘画

文章目录 kaggle介绍项目部署edit my copy链接显示 结果展示 kaggle介绍 Kaggle成立于2010年,是一个进行数据发掘和预测竞赛的在线平台。从公司的角度来讲,可以提供一些数据,进而提出一个实际需要解决的问题;从参赛者的角度来讲&…...

微服务概述-7

Shiro 框架 Shiro 是一个用于 Java 应用程序的安全框架。它提供了身份验证、授权、加密和会话管理等功能,可以帮助开发人员构建安全可靠的应用程序。 Java 中针对权限管理常见的有 2 个著名的框架:spring security 和 shiro shiro 基本概念 credentia…...

十二、Linux如何修改文件/文件夹所属用户or用户组?chown命令

目录 1、基础语法 2、修改目标用户: 3、修改用户组: 4、使用-R命令,并同时修改用户/用户组 1、基础语法 chown [-R] [目标用户][:][目标用户组] 被修改文件/文件夹 (1)选项-R:同chmod,对文…...

企业百家号蓝V认证后,百度营销基木鱼落地页如何嵌入百家号中

首先搭建百度营销基木鱼落地页 在我们的百度营销后台,点击基木鱼跳转至百度营销基木鱼页面,在我的站点位置,可以创建H5站点,PC站点等,创建完成后可以点击复制基木鱼落地页的链接。 注意事项 1、企业百家号需要进行…...

【网络】每天掌握一个Linux命令 - iftop

在Linux系统中,iftop是网络管理的得力助手,能实时监控网络流量、连接情况等,帮助排查网络异常。接下来从多方面详细介绍它。 目录 【网络】每天掌握一个Linux命令 - iftop工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景…...

反向工程与模型迁移:打造未来商品详情API的可持续创新体系

在电商行业蓬勃发展的当下,商品详情API作为连接电商平台与开发者、商家及用户的关键纽带,其重要性日益凸显。传统商品详情API主要聚焦于商品基本信息(如名称、价格、库存等)的获取与展示,已难以满足市场对个性化、智能…...

模型参数、模型存储精度、参数与显存

模型参数量衡量单位 M:百万(Million) B:十亿(Billion) 1 B 1000 M 1B 1000M 1B1000M 参数存储精度 模型参数是固定的,但是一个参数所表示多少字节不一定,需要看这个参数以什么…...

CMake基础:构建流程详解

目录 1.CMake构建过程的基本流程 2.CMake构建的具体步骤 2.1.创建构建目录 2.2.使用 CMake 生成构建文件 2.3.编译和构建 2.4.清理构建文件 2.5.重新配置和构建 3.跨平台构建示例 4.工具链与交叉编译 5.CMake构建后的项目结构解析 5.1.CMake构建后的目录结构 5.2.构…...

蓝牙 BLE 扫描面试题大全(2):进阶面试题与实战演练

前文覆盖了 BLE 扫描的基础概念与经典问题蓝牙 BLE 扫描面试题大全(1):从基础到实战的深度解析-CSDN博客,但实际面试中,企业更关注候选人对复杂场景的应对能力(如多设备并发扫描、低功耗与高发现率的平衡)和前沿技术的…...

鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院挂号小程序

一、开发准备 ​​环境搭建​​: 安装DevEco Studio 3.0或更高版本配置HarmonyOS SDK申请开发者账号 ​​项目创建​​: File > New > Create Project > Application (选择"Empty Ability") 二、核心功能实现 1. 医院科室展示 /…...

如何为服务器生成TLS证书

TLS(Transport Layer Security)证书是确保网络通信安全的重要手段,它通过加密技术保护传输的数据不被窃听和篡改。在服务器上配置TLS证书,可以使用户通过HTTPS协议安全地访问您的网站。本文将详细介绍如何在服务器上生成一个TLS证…...

深入解析C++中的extern关键字:跨文件共享变量与函数的终极指南

🚀 C extern 关键字深度解析:跨文件编程的终极指南 📅 更新时间:2025年6月5日 🏷️ 标签:C | extern关键字 | 多文件编程 | 链接与声明 | 现代C 文章目录 前言🔥一、extern 是什么?&…...

uniapp手机号一键登录保姆级教程(包含前端和后端)

目录 前置条件创建uniapp项目并关联uniClound云空间开启一键登录模块并开通一键登录服务编写云函数并上传部署获取手机号流程(第一种) 前端直接调用云函数获取手机号(第三种)后台调用云函数获取手机号 错误码常见问题 前置条件 手机安装有sim卡手机开启…...

libfmt: 现代C++的格式化工具库介绍与酷炫功能

libfmt: 现代C的格式化工具库介绍与酷炫功能 libfmt 是一个开源的C格式化库,提供了高效、安全的文本格式化功能,是C20中引入的std::format的基础实现。它比传统的printf和iostream更安全、更灵活、性能更好。 基本介绍 主要特点 类型安全&#xff1a…...