【开发环境搭建】5.Pycharm+Anaconda的python开发环境搭建


本文是个人使用经验的总结,参考他人工作部分在文中相应地方提到,除此外全是本人原创。
工欲善其事,必先利其器,一个好的开发环境可以增加开发速度和开发版本的稳定性。本文主要讲使用 windows环境下pycharm搭建本地及远程python开发环境,将涵盖以下内容:

  • anaconda及pycharm的安装
  • pycharm python开发环境的配置及本地文件的编
  • 实现本地python文件的编辑、运行和调试
  • 连接多台远程服务器
  • 利用远程服务器上python开发环境进行运行和调试

1、Anaconda和Pycharm的安装

在windows系统下安装这两个软件,Anaconda是免费的,按照官方安装教程安装就行;pycharm有社区版和专业版,专业版功功强大但收费,如果不需要使用连接远程服务器等功能使用社区版没问题。

1.1 Anaconda安装

参照官网安装教程,完成下载和安装。

下载完成后的文件如下:
在这里插入图片描述
这个是我下载的版本,是目前最新版本,不同版本安装过程区别应该不会太大。

  • 双击运行,并点击next,并点击agree:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 选just me
    在这里插入图片描述
    在这里插入图片描述
    选择加环境变量到系统,这样可以方便后期配合其它软件(如pycharm,vscode)使用.
    注册python3.7后将所有电脑上应用来使用这个版本的python3.7.如果要安装不同版本的anaconda或多版本的python可以不选这一项。

在这里插入图片描述

  • 点next:
    在这里插入图片描述
    在这里插入图片描述
    提示选择安装pycharm.
  • 点击next和finish
    在这里插入图片描述
    完成安装,全程用进10几分钟。
  • 验证安装
    在这里插入图片描述
    选择Anaconda Prompt,点击打开,并输入conda list,安装成功的话会把所有的packages列出来:

1.2 Pycharm的安装

打开网址,选择合适版本(大部分版本都可以,只要能activate),进行下载:

安装包:

又击一路按提示安装:

*64-bit launcher* 在桌面创建pycharm快捷方式,版本是64位的 *update context menu* 右键点击文件夹作为项目并用pycharm打开 *Add launchers dir to the path* 可以通过命令行打开pycharm,这个也没必要,通过双击快捷方式就可以打开 *create Associations*将系统上的.py文件关联到pycharm上,不想所有..py文件全用pycharm打开就不用选

完成安装桌面会多一个快捷方式。
在这里插入图片描述
接下来不用重启系统也可以进行activate.
双击打开,初次初装不会有历史配置,但升级安装可以选历史的安装设置:
在这里插入图片描述
接着选配色,我选白色风格:

接着选pluglin,这个就不选了,用pycharm自带的。

接着进行activate,这个过程就不再多说了,大家自行度娘吧。
接着是:

a. Create New Project :

这个可以指定项目类型,Pure Python或其它,比如Scientific: 可以看到,差别不大(其它项目也差不多),都有*Location*,*Project Interpreter*; 如果使用*New environment using*会有三种虚拟环境来选择,未安装Anaconda的话,选择Virtualenv会自动创建一个环境,选Pipenv这个本人没有试过,安装Anaconda后,选择Conda,也会自动创建一个环境。因为我们安装有Anaconda,所以选择*Existing interpreter*

打开如图键头所指:

可选种类很多,我们选Conda Environment来使用我们安装好的Anaconda.下面把这些可选项的内容都列出来看看.

Interpreter类型 说明
在这里插入图片描述 使用virtualenv中的python解释器,其中Make availale to all projects
就是一次设置,所有项目都将使用这个解释器,否则本次设置只为
本项目单独设置,有新的项目后再重新设置
在这里插入图片描述 这个就我们conda的环境及路径,将使用Aancconda安装后的
base环境中python解释器,将可以使用所有Anaconda
中自带的packages
在这里插入图片描述 系统Interpreter如果安装有
python IDLE或任何其它解释都可以
在这里插入图片描述 这个未曾使用过(看图中的红字,
所以使用这个应该需要先安装pipenv)
在这里插入图片描述 这个是使用远程服务器上的python解释器可以是任何
的环境安装的python(系统自带,anaconda,vitrualenv等),
曾用过远程anaconda环境的python,可以使用完整的整个
anaconda的环境,这个配合远程服务器工作非常好
在这里插入图片描述 没使用过,以后可能会研究
学习一下,毕竟现在很热门
在这里插入图片描述 未曾使用过

我们选用conda的base环境,如下。

Conda executable这一项系统自动检测到并填写,Interpreter可以打开 Anacond prompt(默认找开base环境),输入where python,可以查看python解释器的位置:

在这里插入图片描述
只为当前项目做这一项的设置:

项目地址主到D盘test下面,然后点击create,就完成了。 打开该项目的解释器:File-> Settings ...:

安装成功

b. Open

已经有项目,我们可以直接打开已经有的项目,比如上边新建的test项目

c. Get from Version Control

本机上要下载git(这个是主流使用的),然后配置pycharm:

Configure->Settings->Version Control ->Git

系统会自动检测到我们git的安装位置,点击Test可以测试是否可以使用。
设置好以后就可以选择:

这样一个新的项目就使用git配置好了,并且以后可以一直使用该git完成提交等版本控制。作为对比,我们可以看一下有无版本控制的区别,上一个test项目和本项目的文件上分别鼠右击:

到此,pycharm的安装和项目的新建就完成了。

2、pycharm开发环境的配置及本地运行调试

本节主要讲python解释器的设置或变更、python packages的安装、git版本控制。由于pycharm功能强大,在实践中有什么新的需求可查官方说明。

2.1 pycharm项目解释器的设置及packages的安装

初建项目时,就已经设置好了解释器,正常来说是不会改变的,但要知道如何设置。
File->Settings->Project:test->Project Interpreter

点击小齿轮,可以像新建项目时那样设置解释器;点击加号可以安装软件包

在anaconda prompt的命令行中使用conda 安装也可以,具体conda使用方法,参见本人其它博客

2.2本地代码的运行及调试

这部分还是简单,只要按照说明使用即可
在这里插入图片描述
在实践中多使用,慢慢会学会。

2.3 为已有项目填加git版本控制

这部分主要讲创建项目时不是从version control中产生,而是新建的本地项目,我们将其使用git加入版本控制.
在github上创建一个test1的repository,如果不使用pycharm,单纯使用git:

echo "# test1" >> README.md
git init
git add README.md
git commit -m "first commit"
git remote add origin https://github.com/abcdef/test1.git
git push -u origin master

现在使用pycharm,请参照其它人的这篇博客,亲测有效,需要补充的产是无需安装.gitignore,因为新版本的pycharm在add和commit的时候可选文件,当然按照原博客来操作也没什么问题.

3、Pycharm连接多台远程服务器

工作中,我们更多的是链接到远程的服务器来进行python开发,包括运行、调试及文件传输。

3.1 连接远程服务器

还是以我们新建的项目test为例。链接远程服务器,需要知道ip(通过ifconfig可以查看)及用户名和密码,这个可以通过管理员获得。这种教程网上挺多的,但考虑到和我当前这个版本不同,并且教程不够细致,这里就不引用别人的工作,直接自己走一遍了。

  • 点击Tools->Deployment->Configuration…
  • 接着在打开的新窗口点加号
    在这里插入图片描述
  • 在打开窗口为要连接的服务器起个名字
    在这里插入图片描述
    *接着在第一个选项Connection中填入相应的远程服务器的Ip,用户名和密码,可选择记住密码,Root path建意选远程服务器上个人home的路径。对于能否连接成功,有Test Connection来进行测试。

流程是这样,输入Host,然后是用户名和密码(保存密码),然后点击Test Connection,如是连接成功,会有下图

在这里插入图片描述
接着,点击Root path 后Autodetect,会自动填入,最终结果如下:

, .

选择一个文件,如下:test项目的所有内容都将与/home/****/aa对应。
在这里插入图片描述

  1. 最后点击OK.
    通过Add New Mapping 可以实现更多的对应。
    配置成功后,再次点tools->Deplement:

可以看到多了几项内容
Upload to test:直接上传内容到test(我们给服务器起的名字)服务器
Upload to ...:在有多个远程服务器的时候是选择上传到那个服务器的
下边还有从服务器下载,同步等功能,这里不再缀述。
通过右击test,也可以找这些选项,而且更加常用一些;右击可以针对整个项目或单个文件:

  • 上传a.py文件
  • 编辑远程文件
    同样,右击可以进行,具体不再详述。
    如果要连接多台服务器,可以同样方法,设置新的连接

3.2 利用远程服务器的python开发环境进行运行和调试

  • 点击Tools-> start ssh session,可以打开或新建远程的shell环境:

在这里插入图片描述
完全可以直接使用远程的环境。

  • 使用远程python解释器
    在远程服务器上,我使用的是conda环境,该环境的使用和搭建,参见系列博客,通过远程shell激活一个环境,找到python解释器的位置,然后从pycharm中配置该服务器。
conda activate tf2
which python

在这里插入图片描述
参照本博客前边内容,修改python解释器,
File->Settings->Project:test->Project Interpreter->点小齿轮->add->ssh Interpreter->Existing Server configuration->点...->选test(远程服务器名字),点击OK->进行后续设置

.

以下是选择我们建好连接的远程服务器,也可以自己新建

. 上图可见,我们有两种选项,不是很理解,选`Create`不会有问题 ,并点击Next。

.

有两个地方需要更改,`Interpreter`要改成我们远程服务器上想要选择的python解释器的位置(通过where python查找),下边附加选项是否要用sudo,这个根据自身权限来选择,另一个地方是`Sync folders`,是实现本地项目地址与远程服务器地址同步的,附加下边的选项是‘是否要自动上传本地服务器到服务器',我这里就选择是后,本地有任何新的改动,都会被上传到远程服务器并覆盖原文件。 完成设置后,可以看到我们新环境的packages:

整个过程完成。然后使用运行或调试,都是使用远程环境,可以完全的进行远程调试。

如上图b.py文件的内容是:

import os
print(os.getcwd()))

运行后,输出的是远程服务器的地址;
另外,要执行调式,如下图:

还有可以继续Tools->Deploment->configuration:

可以看到,与我们原来的建立的远程服务器的连接相同。在Mappings中可以设置本地与服务器的文件同步对应路径。

本地和远程完全自动的文件同步,完全相当于本地运行远程。

还有一种远程调试方法
之前连接远程服务器的工作同样需要
Run->Debug->Edit Configuratons->点击加号->Python Remote Debug

.

在这里插入图片描述
在这里插入图片描述
然后定义远程调试的名字,本地机器的ip,port自己定义,还有文件对应

.

.

完成后可以看到pycharm右上角窗口:
在这里插入图片描述
接着pycharm上打开远程test服务器shell,执行代码:

pip install pydevd-pycharm~=193.5662.61  # 或conda的虚拟环境中安装,都可以

在这里插入图片描述

import pydevd_pycharm
pydevd_pycharm.settrace('192.**.**.**', port=4453, stdoutToServer=True, stderrToServer=True)
#这两行写到要调试的代码开头,比如文件b.py

然后对b.py进行调试,如下图红框,点那个小虫子开始调试,console中显示等待连接:

切换到远程服务器的Terminal,然后执行文件b,会开启调试,自动跳转到Debug:

Terminal中显示:

Debug中显示:

从上图右下角看出,本文的两种调试方法应该是相似的(相同的),但是用法不同。个人觉的用第一种比较方便,只要将项目的解释器设置成远程解器就可以。

到些,本文就全部写完了,还一些关于pycharm使用本地或远程服务器上jupyter notebook的情况这里就不再详述,因为本人觉的pycharm对jupyter的支持不是很好,用起来不是很方便

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章