三个方法,
一、最方便最稳定最好的方法是在Anoconda Navigator 这个图形化界面里进行配置
打开
依次点击下面这个
开始创建
下面几个选项分别是
已经安装的
没有安装的
可以更新的
已经删除的
所有的
然后去pycharm里选到把这些新创建的环境下的python.exe这个解释器添加进去,就成功让程序在这个环境里运行了
先点圆圈里的内容,然后那两个随便点一个
点那个Add local Interpreter,
点这个Exisiting(已存在),把这个环境下的python解释器(python.exe)加进去,就成功让这个文件夹里的代码在这个环境里运行
如图,
这里因为我们缺 pytorch(虽然这里是torch,但我们其实要导入的是pytorch) 和torchvision 两个包,
点开那个NOT Installed,搜索torch
把这两个选上
点击Apply,开始安装
还缺一个 tensorboard
下过来,类似的还有其他包如matplotlib那些
然后畅通无阻
二、是在Anoconda 的命令行里配置
也就是这个
进去
这里的意思是已经进入conda的基(base)环境了,就是这个
在anoconda 命令行环境中操作anoconda的常用指令参考下面
(48条消息) Anaconda Prompt使用简介:安装python等包、创建删除环境等_明月醉窗台_明月醉窗台的博客-CSDN博客
检查Anaconda版本和已经创建的环境
检查目前有哪些版本的python可以安装
创建环境
出现新窗口
创建成功
本来Anoconda创建的环境是默认在它的evs下面的,
但也可能放在C盘里面,如果是这种情况那么
(48条消息) 解决新创建的anaconda环境在C:\Users\xxx\.conda\envs\,而不在anaconda安装目录下的envs中_anaconda创建的虚拟环境存储在哪_半岛铁子_的博客-CSDN博客
注意除了这个evs文件夹权限要改,它的父文件夹Anoconda也要改。
激活虚拟环境并查看包
安装包
下载页面很乱,忘了截图了,下好了
在安装了若干包后
成功运行
三、是Pycharm里自带的配置环境功能
核心就是你选好位置和要装的东西,然后点确定,它pycharm帮你把这些东西都下好。
下面是详解:
进入pycharm可以发现箭头指向的地方是No interpreter,也就是说没有指定解释器
点击它就会有
点这个键就会有
再点这个Add Local Interpreter按钮,进入下面这个:
这里的Environment默认选中了这个New按钮
在这种情况下是要创建一个新的环境,
这个Location的意思是这个环境是建立在哪里,也就是说构成这个环境的各种函数包和文件放在哪
你必须先找到地方,然后创建一个文件夹,名字就是环境名,来放它后面要下的各种包
我这里是torch1
(注意,这里的环境不能建立在Anocaonda 的环境下面,我这里就犯了这个错,
因为Anoconda 下管理的环境(evs)是不准其他程序动的,
所以Pycharm是无权访问这个torch1文件夹的,
下面就是失败的全过程。)
如果你创建这个文件夹之前就打开了Add Local Interpreter这个按钮
那么要退出Add Local Interpreter,再进去才会刷新出你创建的这个文件夹,
然后选中它
这个base interpretert 的意思是,你要选择一个基解释器,也就是最基本的也是最重要的python解释器,并选择这个python解释器的版本,毕竟这是用python写的嘛,一切基于它运行
这个选项里的内容就是说,你选择一个python解释器的版本,后面是它去哪里给你下这个版本的python的地址。
如果你自己电脑里本来就有python解释器,想直接用自己电脑里的这个,不想再下一个,
就可以点这三个点,然后找到你自己的python解释器的地址就行了
我们这里让它给我再下一个
点ok之后pycharm就开始为你找到相应的包和文件开始往你指定的文件夹(torch1)里面导,
来构造这个环境
安装失败
只要把环境(torch1)独立出anoconda之外就行了
我放在了这里
只要把上面的torch地址改了重复上面的过程就可以
如下,确实是有点慢的
环境创建完成后,是没有torch 和torchvision 这两个包的,我们需要再导入
可以通过这个按钮
或者这个按钮
找到下面的内容
点那个加号,输入torch 可以找到它,
点击即可添加进torch包
退出这个页面可以看到
pytorch导入成功,这个torch的红色波浪线没了
同样的导入torchvision
补上这两个包后,程序就畅通无阻了,
但是在运行predict.py的时候出现了这个问题
给出的解释是这样的
OMP:错误#15:初始化libiomp5md.dll,但发现libiomp5md.dll已经初始化。
OMP:提示这意味着OpenMP运行时的多个副本已经链接到程序中。这是危险的,因为它会降低性能或导致不正确的结果。最好的做法是确保只有一个OpenMP运行时链接到进程中,例如避免在任何库中静态链接OpenMP运行时。作为一种不安全、不受支持、无文档记录的解决方案,您可以设置环境变量KMP_DUPLICATE_LIB_OK=TRUE,以允许程序继续执行,但这可能会导致崩溃或悄悄地产生不正确的结果。
参考Chat GPT的回答
也就是说,我这里的本质原因是因为一开始创建这个torch1环境的时候没有勾选这个Inherit global site-packages,这就导致我不能继承全局Python安装中的第三方库或模块,所以就在torch1里下了一个。
通过
where python
来查看我的全局的安装,找到我的全局python安装路径
就是这个
可以看见这里有两个libiomp5md.dll,但这两个是通过anoconda创建的,有保护机制,所以这两个不会冲突
而去torch1里面搜也有一个
这是因为一开始没勾选那个键,所以系统认为要单独再下一个libiomp5md.dll,
但是在运行的时候,全局python安装路径里的libiomp5md.dll还是会参与的,也就是anoconda里的那两个libiomp5md.dll,谁排前面就用哪个
这样,anoconda里的libiomp5md.dll就和torch1里的libiomp5md.dll冲突了
所以解决方法是,反正anoconda里的libiomp5md.dll对全局都可见,那就把torch1里的libiomp5md.dll删了就行
参考下面
问题解决,但出了新问题
也就是说我那行代码的用法在3.6版本以后换用法了,我这里的matplotlib是3.7版的,以后这个用法可能会被移除,所以提醒我一下
我换个3.52版的
可以看到问题解决了
注意事项
如果出现文件夹解析错误,首先要考虑是不是文件夹或者用户名是中文,如果是那一定要改成英文。
常用功能,勾选这个然后通过修改Size就能改变工具栏大小
找到这个选项,勾选这个就能通过Crtl + 鼠标滚轮来控制代码的大小
不勾选这个这个图就可以可以自由拖动
勾选上之后图就固定在右边的工具栏里了