作为嵌入式人员不是搞啥高大上的东西,去下个免费的phcharm 用用就行。过phcharm 好多库不包含建议装个Anaconda。Anaconda很多工具都能在上面直接安装,很方便。
NumPy是Python中科学计算的基础包。它是一个Python库,提供多维数组对象,各种派生对象(如掩码数组和矩阵),以及用于数组快速操作的各种API,有包括数学、逻辑、形状操作、排序、选择、输入输出、离散傅立叶变换、基本线性代数,基本统计运算和随机模拟等等。
对于许多用户,尤其是在 Windows 上,最简单的方法是下载以下的 Python 发行版,它们包含了所有的关键包(包括 NumPy,SciPy,matplotlib,IPython,SymPy 以及 Python 核心自带的其它包):
Anaconda: 免费 Python 发行版,用于进行大规模数据处理、预测分析,和科学计算,致力于简化包的管理和部署。支持 Linux, Windows 和 Mac 系统。
Enthought Canopy: 提供了免费和商业发行版。持 Linux, Windows 和 Mac 系统。
Python(x,y): 免费的 Python 发行版,包含了完整的 Python 语言开发包 及 Spyder IDE。支持 Windows,仅限 Python 2 版本。
WinPython: 另一个免费的 Python 发行版,包含科学计算包与 Spyder IDE。支持 Windows。
Pyzo: 基于 Anaconda 的免费发行版本及 IEP 的交互开发环境,超轻量级。 支持 Linux, Windows 和 Mac 系统。
下载一个安装,但是比较奇怪的是我安装的PYTHON 在环境变量中没有添加。即使手动添加了环境变量但是还是不能正常在命令行调用。
实际安装时添加了这2个环境变量:
C:\Users\topma\AppData\Local\Programs\Python\Python311\Scripts
C:\Users\topma\AppData\Local\Programs\Python\Python311\
安装PYCHARM 在新建项目的时候选择Anaconda目录下的PYTHON 版本。
可以看都左边的区域可能没有看到需要的numpy 组件,可以按+号添加安装相关组件,否则可能会导致编译报错。
安装介绍链接
如果前面这个速度慢直接安装后面的pyqt5-tools ,也带QT5只是版本可能会低一点。
pip install PyQt5
pip install pyqt5-tools
Win+S呼出Cornata主面板(搜索框),输入designer,如果看到跟下图类似的结果说明PyQt Designer已经被安装
pip install pyserial
在SIMPLE FOC requirements.txt文件中说明中需要这些模块(实际上版本要求的pyqt高没有关系)
可以输入命令
pip install -r “requirements.txt”
PyQt55.15.2
pyqtgraph0.11.1
pyserial==3.5
numpy
gitpython
shutils
我实际安装的状态,我修改了requirements.txt 将==改为>=就没有报错。
Requirement already satisfied: PyQt5>=5.15.2 in d:\users\topma\anaconda3\lib\site-packages (from -r requirements.txt (line 1)) (5.15.4)
Requirement already satisfied: pyqtgraph>=0.11.1 in d:\users\topma\anaconda3\lib\site-packages (from -r requirements.txt (line 2)) (0.11.1)
Requirement already satisfied: pyserial>=3.5 in d:\users\topma\anaconda3\lib\site-packages (from -r requirements.txt (line 3)) (3.5)
Requirement already satisfied: numpy in d:\users\topma\anaconda3\lib\site-packages (from -r requirements.txt (line 4)) (1.21.5)
Requirement already satisfied: gitpython in d:\users\topma\anaconda3\lib\site-packages (from -r requirements.txt (line 5)) (3.1.30)
Requirement already satisfied: shutils in d:\users\topma\anaconda3\lib\site-packages (from -r requirements.txt (line 6)) (0.1.0)
Requirement already satisfied: PyQt5-Qt5>=5.15 in d:\users\topma\anaconda3\lib\site-packages (from PyQt5>=5.15.2->-r requirements.txt (line 1)) (5.15.2)
Requirement already satisfied: PyQt5-sip<13,>=12.8 in d:\users\topma\anaconda3\lib\site-packages (from PyQt5>=5.15.2->-r requirements.txt (line 1)) (12.11.1)
Requirement already satisfied: gitdb<5,>=4.0.1 in d:\users\topma\anaconda3\lib\site-packages (from gitpython->-r requirements.txt (line 5)) (4.0.10)
Requirement already satisfied: pymysql in d:\users\topma\anaconda3\lib\site-packages (from shutils->-r requirements.txt (line 6)) (1.0.2)
Requirement already satisfied: configparser in d:\users\topma\anaconda3\lib\site-packages (from shutils->-r requirements.txt (line 6)) (5.3.0)
Requirement already satisfied: smmap<6,>=3.0.1 in d:\users\topma\anaconda3\lib\site-packages (from gitdb<5,>=4.0.1->gitpython->-r requirements.txt (line 5)) (5.0.0)
一段时间用pycharm做了其他的项目,结果再用的时候出现 no Qt platform plugin could be initialized 这样的错误。不知道怎么处理,后来将我后面安装的3.8的python 删除后再从新安装一下就能成功了(并从新启动异常pycharm)。
不正确的设置可能会报错误:
CreateProcess error=2, 系统找不到指定的文件。需要设置下面部分。
实际系统安装了但是在pycharm中找不到的库可以在这添加一下,可能是作为开发需要隔离和系统的相关内容进行开发。
1、使用Pycharm进行开发,安装环境,想要使用pycharm直接安装外部包,但是在Project Interpreter中提示以下信息:
Python Packaging tools not found.Install packaging tools
sudo pip install setuptools
Traceback (most recent call last):
File "D:\XTS\2023\SimpleFOCStudio-main\simpleFOCStudio.py", line 8, in <module>
from src.gui.mainWindow import UserInteractionMainWindow
File "D:\XTS\2023\SimpleFOCStudio-main\src\gui\mainWindow.py", line 6, in <module>
from src.gui.workAreaTabbedWidget import WorkAreaTabbedWidget
File "D:\XTS\2023\SimpleFOCStudio-main\src\gui\workAreaTabbedWidget.py", line 10, in <module>
from src.gui.configtool.minimalCodeDisplay import MinimalCodeDisplay
File "D:\XTS\2023\SimpleFOCStudio-main\src\gui\configtool\minimalCodeDisplay.py", line 562, in <module>
class IconLabel(QWidget):
NameError: name 'QWidget' is not defined
是因为选择使用的python 的环境有缺失或限制,后转为系统的python RUN 运行正常。
打包说明
注意打包时加了-w参数就没有终端显示
通过命令 -n 为生成文件的名字
pyinstaller -F -w main.py -n make_tools
pyinstaller -F main.py(无w有窗口输出)
生成对应的.exe
可能会碰到错误按提示操作
PS C:\Users\topma\PycharmProjects\CopyChangMame> pyinstaller -F -w .\main.py
The 'pathlib' package is an obsolete backport of a standard library package and is incompatible with PyInstaller. Please remove this package (located in d:\Users\topma\anaconda3\lib\site-packages) using
conda remove
then try again.
输入
PS C:\Users\topma\PycharmProjects\CopyChangMame> conda remove pathlib
.....
.....
scikit-learn-inte~ 2021.6.0-py39haa95532_0 --> 2021.5.0-py39haa95532_0 None
Proceed ([y]/n)? y
pycharm 在File->seting->Project: -> Pyton Interpreter 设置
通过Add Interpreter 可设置组合,比如终端用哪个版本,虚拟环境用哪个版本可以分开来,保证对应测试是正常的。
pip install pyinstaller
对于有时候PYTHON 的终端环境变换,比如有个版本的PYTHON被删除,再运行可能会报错对应PYTON找不到。
pycharm 在File->seting->Tools ->Terminal ->Environment variables 按加号添加自己的环境变量
终端环境设置
电脑如果存在多个python(我的电脑存在python310和37),就会导致pyinstaller在环境变量中的引用和搜索的库的范围出错。
而使用如下命令可能有效果,也可能依旧没有用。具体原因可以参见
python -m 命令是什么意思
py -3.8 -m PyInstaller xxxx.py
正确的解决方式是:
1.在虚拟环境中打包
2.直接用指定python版本的pyinstaller的绝对路径进行打包,如C:\Python37\Scripts\pyinstaller.exe -F xxx.py
3.设置pycharm 终端环境为你需要的版本
pip install pyserial
这块也需要安装,点击+ 如果搜索没有东西点下+边上的绿色标志用use conda package manager再点加就有了。