新手Pycharm使用
前言
新手初次使用pycharm,记录一些包括 环境搭建/快捷键/高亮自定义/批量保存网络&图片 的方法
省略安装步骤,为环境管理方便建议安装anaconda。
Conda允许你创建相互隔离的独立环境,这些环境被称之为虚拟环境(Virtual Environment),这些环境各自包含属于自己的文件、包以及他们的依存关系,并且不会相互干扰。
Anaconda有一个缺省的名为base的环境, 但是不建议把程序放在base环境中,应该创建不同的虚拟环境分别管理不同的开发项目。尽量达到每个项目单独一个虚拟环境,因为后面使用pyinstaller打包的项目成为可执行文件的时候,会打包环境里所有安装的包,该环境下每个包都是我们项目用到才安装的,非常干净,这样会加快文件的运行速度也减小文件的大小,,便于我们管理和维护!
参考这篇文章:
安装Anaconda
一、环境搭建
根据需要选择开发的python版本,提前下载安装python 点击前往官网下载
在terminal 输入
conda create -n env_name python=3.10
这表示创建python版本为3.10、名字为env_name的虚拟环境。创建后,env_name文件可以在Anaconda安装目录envs文件下找到。在不指定python版本时,自动创建基于最新python版本的虚拟环境.
创建成功后激活
conda activate YOURENVNAME
如果忘了刚刚创建的环境名字可以在terminal执行以下指令,会打印出所有存在的虚拟环境, 前面带星号“*“的表示当前活动环境:
conda info -e
conda info --envs
conda env list
创建好后可以用下面指令检查下对应python版本对不对:
创建好虚拟环境安装好需要的包(pip install packagename),打开工程文件后,为工程文件配置编译环境,file>>setting>>Project>>Python Interpreter
添加我们刚刚创建的虚拟环境
点击OK保存,再次打开就可以看到当前项目interpreter是我们刚刚创建的
常用conda 指令总结:
conda --version #查看conda版本
conda config --show #查看conda的环境配置
conda update conda #更新conda
conda create --help #查看某条命令的帮助
conda create -n env_name python=3.10 #创建虚拟环境
conda activate env_name #激活虚拟环境(缺省名字默认回到base)
conda deactivate env_name #退出虚拟环境(缺省名字默认回到base)
conda remove --name env_name --all #删除虚拟环境及其中所安装的包
conda remove --name env_name package_name #只删除虚拟环境中的某个或者某些包
conda env export --name myenv > myenv.yml #获得环境中的所有配置
conda env create -f myenv.yml #重新还原环境
conda list #查询看当前环境中安装了哪些包
conda install package_name #在当前(虚拟)环境中安装一个包
conda uninstall package_name
二、Pycharm快捷键
-
自动对齐快捷键组合是: Ctrl + Alt + L 将光标置于需要调整的代码行或者区域,按下快捷键,代码就可以自动对齐
-
选中全部相同字符(变量)快捷键组合:Ctrl + Shift + Alt + J
-
选中下一个相同字符(变量)的快捷键: Alt + J
-
多行操作/多个光标操作: Ctrl + Shift + Alt
- 注释对齐: MAC可以参考这篇Pycharm code reformatting: align lines by operator
一些其他:
Pycharm使用技巧
三、高亮自定义
点击 file>>setting
根据自己喜好为不同的代码选择相应的高亮颜色
四、批量保存网络&图片
1、如果图片少量可以直接右键copy,然后粘贴到你想要的路径
2、大量过程曲线
需要放在在plt.show()之前,默认会放在当前路径下,可以添加路径:
path = "./checkpoints_d3"
if not os.path.exists(path):
os.makedirs(path)
plt.figure(1)
plt.plot(data[i])
plt.savefig(path + f'/figure{i}.png')
plt.show()
pytorch保存网络模型
torch.save(model.state_dict(), path + '/name%d.pth')
五、print 输出到txt
debug过程中有很多打印信息,尤其是我想要查看某部分训练的过程时,终端常常放不下这么多
f = open('test.txt','w')
...
print(f'intf:{var}', file=f)
...
f.close()