使用vscode打造python开发环境

 1. 各位看客,由于本人写的文章,有时候会修改,以便变得更好,更优秀,因此当你看到文章中先后有一些不对应的地方,那说明我正在大幅度修改。我通常会在一天内完成本次的修改。html

 2. 新增一个vscode远程开发,使用远程服务器上的python开发环境。在第19条那里。python

 

1.安装python解释器,配置好path变量。linux

下载网址:https://www.python.org/downloads/release/python-374/git

注意区分64位仍是32位的。github

安装python的时候,建议将python添加到path环境变量的复选框勾上,而且使用自定义安装,由于能够自定义安装目录,我是安装在C:\Python37中的chrome

 

2.安装virtualenvshell

win+R输入cmd后点肯定,而后执行:django

pip install virtualenv

 

3.下载并安装好vscode编辑器(安装时,将复选框所有勾上)json

下载地址:https://code.visualstudio.com/ubuntu

4.在vscode中安装python插件

按下快捷键Ctrl+Shift+X,进入插件管理页面
在搜索框中搜索python关键字
点击下载量最高的那个进行安装,通常都是第一个。

vscode安装了上面这个插件后,能干什么?

第一:这个插件不是python语言的解释器,vscode想要运行python代码,必须另外指定在windows上安装的python解释器路径才能够。

第二:这个插件被安装上后,vscode就具备了调用python解释器的功能。其实就是在setting.json和launch.json这两个配置文件中,能够添加python相关的配置了,好比经过python.pythonPath的值找到python解释器的位置等等。

第三:能够经过按下ctrl键,点击函数,打开函数的所在文件和定义位置。

第四:具备代码提示功能。

(这样解释是否是有点傻?)

5.准备一个项目并用vscode打开

第一步:建立一个总项目目录

D:\CodeProjects

第二步:建立一个python总项目目录

D:\CodeProjects\PythonProjects

第三步:建立一个测试项目目录

D:\CodeProjects\PythonProjects\opms

第四步:在指定项目中建立python虚拟环境

win+R输入cmd后点肯定,依次执行下面三条命令:(-p后面的参数,能够换成其它python解释器的路径)

D:
cd D:\CodeProjects\PythonProjects\opms
virtualenv .venv -p "C:\Python37\python.exe"

 

第五步:右击opms项目目录,使用vscode打开(通常状况下,一个vscode界面只能打开一个项目目录)

6.为项目运行时指定特定的python解释器

第一步:为新打开的项目生成setting.json配置文件

按下快捷键ctrl+shift+p,输入interpreter,单击筛选出来的结果“Python: Select Interpreter",就会跳出windows系统上已经安装的全部python解释器,咱们这里随便选择一个便可,由于咱们以后会自定义setting.json配置文件中的值,这一步只是为了生成setting.json这个配置文件。

补充:你若是和我同样,在打开项目以前已经在项目中建立了python虚拟环境,那么在选择interpreter时,vscode也会将本项目目录下的虚拟环境中的python解释器也列出来,此时,你能够直接选择这个解释器便可。

第二步:修改setting.json配置文件,指定python.pythonPath的值为opms项目目录下python虚拟环境中的python解释器路径

7.为项目运行时指定入口文件和参数

第一步:为新打开的项目生成launch.json配置文件

点击Debug,点击Add Configuration,点击Python,而后根据你的项目,在Python File、Django、Flask中选择一个,我这里只是为了说明,选择Python File,大家请根据本身的项目类型的进行选择。

第二步:解释launch.json配置文件中configurations列表的做用

program这个键,用来指定项目运行时的入口文件的,其中${file}表示当前文件,${workspaceFolder}表示项目根目录,对于django项目来讲,入口文件应该是项目根目录下的manage.py文件,因此能够配置为"program": "${workspaceFolder}\\manage.py"。

args这个键,用来指定项目运行时,跟在入口文件后面的参数,对于django项目来讲,运行参数应该是:runserver 0.0.0.0:8080 --noreload --nothreading  ,因此能够配置为:

"args":["runserver","0.0.0.0:8080","--noreload","--nothreading"] 。

name这个键,用来命名配置名称的,由于在configurations列表中能够定义多个配置,不一样的配置命名要相互区分。

typerequest这两个键是必须项,在不一样的配置中都要存在的,而它们的值也是固定的。"type": "python" , "request": "launch"。

8.测试一下

在项目目录中,建立一个test.py文件,写入代码后,点击文件上方的绿色三角形按钮运行当前文件。

之因此可以点击按钮就能够运行当前文件,是由于我使用了Python File这个configurations运行配置,参数"program": "${file}",表示当前文件。

有时候vscode会报错以下:

没法加载文件 D:\CodeProjects\PythonProjects\opms\.venv\Scripts\activate.ps1,由于在此系统上禁止运行脚本。

解决办法:

第一步:以管理员身份运行powershell
第二步:执行:get-ExecutionPolicy,回复Restricted,表示状态是禁止的。
第三步:执行:set-ExecutionPolicy RemoteSigned
第四步:选择Y,回车。

9.关于python虚拟环境的解释

python虚拟环境是一个很是好用的东西,之前我觉得只有activate激活这个虚拟环境,才可使用这个虚拟环境中安装的各个模块。如今,我知道以前的认知是局限的。

其实,你只须要使用虚拟环境中的python.exe解释器的绝对路径就可使用这个虚拟环境中安装的python模块了,根本不须要激活。不信的话,你试试:

好比我建立了一个venv虚拟环境:D:\CodeProjects\PythonProjects\opms\.venv\

而后,我运行下面的命令获得的模块列表和全局解释器中的模块列表是不同的(此时我并无激活这个虚拟环境):

D:\CodeProjects\PythonProjects\opms\.venv\Scripts\pip   list

当使用activate激活一个虚拟环境时,咱们就从cmd或者terminal当前窗口中进入到了一个子窗口中了,在这个子窗口中,PATH这个环境变量被临时更改了,当前这个虚拟环境中的Scripts路径就被加入到PATH环境变量中了,那么咱们在这个子窗口中运行的python命令、pip命令等也就经过PATH这个环境变量自动查找,而后指向了虚拟环境Scripts目录中的解释器了,这也就解释了为什么激活了这个虚拟环境,在这个窗口中切换到任何一个目录中,执行python或者pip命令都能使用和查看这个虚拟环境的全部模块的缘由。

10.配置django项目的运行参数

通常咱们运行django项目的命令是:   python manage.py runserver 0.0.0.0:8080

这个命令分为两部分,第一部分是python解释器,咱们在settings.json设置,剩下的参数manage.py runserver 0.0.0.0:8080咱们须要在launch.json中设置。

我粘贴出我在launch.json文件中设置的内容:

    "configurations": [
        {
            "name": "Python: Current File",
            "type": "python",
            "request": "launch",
            "program": "${file}",
            "console": "integratedTerminal"
        },
        {
            "name":"Python: Django",
            "type":"python",
            "request":"launch",
            "program":"${workspaceFolder}\\manage.py",
            "console":"integratedTerminal",
            "args":[
                "runserver",
                "0.0.0.0:8080",
                "--noreload",
                "--nothreading"
            ],
            "django":true
        }
    ] 

此时若是要运行django项目的话,方法以下:

点击左边栏目中的小乌龟,

点击齿轮图标旁边的下拉框,选择Python: Django,

而后点击左边绿色三角形的运行按钮便可。

 

11.配置vscode的文件图标和主题美化

按下快捷键Ctrl+Shift+X,进入插件管理页面
在搜索框中搜索这两个插件并安装:Material Icon Theme 和 Son of Obsidian Theme
而后点击左下角的齿轮图标,选择并点击File Icon Theme,在出现的展现中,选择并点击Material Icon Theme便可。

 此时,咱们就会发现咱们的python文件的图标已经变成了经典的头尾相接的两条蟒蛇了。

 12.安装运行代码片断插件Code Runner(我已弃用它,缘由在下面)

Code Runner也称为万能语言运行环境,它可让你不用搭建各类语言的开发环境,直接经过此插件就能够直接运行对应语言的代码。咱们这里使用这个插件,目的是为了运行代码片断,方面调试。

按下快捷键Ctrl+Shift+X,进入插件管理页面,在搜索框中搜索Code Runner,点击安装便可。

测试一下:

咱们先选中一段代码,而后鼠标右击,选择Run Code,以下:

 

 

 咱们卸载掉这个插件吧。

通过测试,这个插件是使用系统PATH环境变量中配置的python解释器去运行代码片断的,并不能使用咱们在settings.json文件中指定的python解释器,以下:

 

因此卸载掉它吧,咱们uninstall这个插件后,有时候还须要点击这个插件旁边的Reload Required进行重载才能完全清除这个插件,以下:

 固然,咱们也找到了方法去解决这个解释器的问题,但又何须使用这个Code Runner呢?解决方法以下:

点击File,点击Preferences,点击Settings,点击Extensions,点击Run Code configuration,点击Executor Map下方的Edit in settings.json,在打开的settings.json文件中,添加:

"code-runner.executorMap",不要复制它,要本身敲击,根据提示回车后,会自动生成剩下的内容,以下:

而后咱们须要更改其中的python键值,改成"python": "C:\\Python27\\python.exe",你们参照这个,能够自行更改成其它的python解释器路径,好比虚拟环境中python解释器。

咱们再运行test.py看下python解释器版本:

 

 我不推荐的缘由是,若是反复的切换运行不一样的项目,那么就须要反复的更改settings.json文件,比较麻烦,而咱们一开始安装的python插件,只须要一次配置就能够了。

 

 13.启用自动格式化代码工具yapf

第一步:在项目指定的python解释器中安装yapf模块

cd D:\CodeProjects\PythonProjects\opms\.venv\Scripts
activate
pip install yapf
deactivate.bat

第二步:在项目中的settings.json配置文件中,添加:"python.formatting.provider": "yapf",以下:

第三步:按Alt+Shift+F便可自动格式化代码

 测试一下:

未经代码格式化以前的代码以下:

 按Alt+Shift+F后,代码以下:

14.启用pylint进行代码编写时格式规范检查

第一步:在项目指定的python解释器中安装pylint模块

cd D:\CodeProjects\PythonProjects\opms\.venv\Scripts
activate
pip install pylint
deactivate.bat

第二步:启用pylint功能,在settings.json文件中添加:"python.linting.pylintEnabled": true,以下:

第三步:关于pylint检查项的一些定制

"python.linting.pylintArgs": ["--disable=C,broad-except,unused-variable",],
 
检查项按大类分,大约有四个:C、R、E、W,C类应该是与变量、函数名等命名有关的规范,咱们把C类检查所有禁用,E类应该是检查模块、类、函数等是否存在,这个是最有用的,W类应该是与声明的变量是否被使用、使用的异常捕捉类是否细化等检查相关,这个能够根据具体的状况具体禁用。R类还不太清楚。
 
那么如何禁用具体的检查项呢?
首先,咱们将鼠标停留在报出异常的代码上,以下:

 而后,就能够看到异常是unused-variable了,咱们将这个异常检查项在settings.json中禁用掉便可。其它的异常检查项也是这么查看和禁用。

 

第四步:Django项目须要安装额外的规范检查模块

pip install pylint_django

第五步:在settings.json配置文件中为django项目添加加载检查模块

"python.linting.pylintArgs": [
"--load-plugins",
"pylint_django",
],

 15.记录一下vscode中的一些快捷键

终止程序运行:ctrl + `

侧边栏显示和隐藏:ctrl + B

格式化代码:Alt+Shift+F

格式化选中部分的代码:Ctrl + K Ctrl + F

打开Git可视管理:Ctrl + Shift + G

补充

格式化代码的快捷键用起来太麻烦了,将它更改成经常使用的ctrl+alt+l(L的小写)的方式。

按ctrl+k  ctrl+s打开快捷键修改的界面,搜索框中搜索shift+alt+f,快速定位到要修改的快捷键:

修改完成后,以下所示,记得更换搜索关键词:

 

16.新建python文件时自动添加头部信息

第一步:

点击File,点击Preferences,点击User Snippets,输入python,点击跳出来的"python.json(Python)",在打开的python.json文件中,先清空文件原内容,而后添加:

请看:下面的内容,适合python2,在python3中,请将#!/usr/bin/python3(或者用虚拟环境中的python解释器)和#encoding:utf-8替换对应位置的内容。

{
    "HEADER":{
        "prefix": "header",
        "body": [
        "#!/usr/bin/python",
        "# -*- encoding: utf-8 -*-",
        "'''",
        "@File    :   $TM_FILENAME",
        "@Time    :   $CURRENT_YEAR/$CURRENT_MONTH/$CURRENT_DATE $CURRENT_HOUR:$CURRENT_MINUTE:$CURRENT_SECOND",
        "@Author  :   DesignerA ",
        "@Version :   1.0",
        "@Contact :   DesignerA@qq.com",
        "@WebSite :   www.cnblogs.com/DesignerA",
        "'''",
        "# Start typing your code from here",
        "$0"
    ],
    }   
} 

第二步:

在新建的python文件开头输入header,而后回车,就会自动出现上面定义的头部信息了(我已经替换对应位置的内容为python3了),以下:

 

17.vscode配置git管理代码

第一步:先到git官网下载并安装windows 64位版的git,git官网下载地址:https://git-scm.com/downloads,注意,安装Git的过程当中,选择VS Code做为git的默认编辑器,其它都默认便可,以下图:

第二步:为git配置环境变量,默认状况下,git被安装在C:\Program Files\Git\目录下,咱们须要将这个目录下的bin目录添加到Path环境变量中。以下图

 

第三步:设置vscode与git关联,依次打开:File -> Preferences  -> Settings  -> Extensions  -> Git  ->Path (Edit in settings.json)

在打开的settings.json文件中,配置git的可执行文件路径,以下:

//启用git
"git.enabled": true, 
//启用自动刷新
"git.autorefresh": true,
//启用自动提取
"git.autofetch": true,
//同步前进行确认
"git.confirmSync": true,
//配置git可执行文件路径
"git.path":"C:\\Program Files\\Git\bin\\git.exe",
"terminal.integrated.shell.windows": "C:\\Program Files\\Git\\bin\\bash.exe",

第四步:配置git用户名与邮箱(git暂存时须要用到它们)

git config --global user.name "xxxxxxx"
git config --global user.email "xxxxxxx@qq.com"

第五步:在github上新建一个仓库,而后使用命令git clone "仓库地址" ,将仓库克隆到本地目录中。 若是是私有仓库,这步执行后,会要求你输入github帐户密码。

第六步:让git记住密码,这样不用每次都填写

git config --global credential.helper store

第七步:找到git下来的仓库目录,而后右击目录,选择使用vscode打开

第八步:你编辑这个项目中的文件后,你要先点击小勾暂存全部更改,输入你的提交消息(随便输点你本次提交的说明信息)

说明:这里的commit并非提交到github,而是提交到本地的暂存区,并且必需要先提交到本地的暂存区,以后才可使用push将暂存区中的内容推送到github仓库中。

 第九步:将更改提交到github仓库中,从图中能够看到第八步执行完后,本次的更改已经写入到暂存区了。点击Push后,能够到github仓库中看下仓库中的内容是否已经更改

 

18.vscode添加浏览器预览html代码功能

 第一步:按下快捷键Ctrl+Shift+X,进入插件管理页面,搜索并安装插件open in browser

 第二步:修改vscode预览html文件默认使用的浏览器,不修改的话,默认使用IE。固然,这一步能够不执行,由于右击html文件的时候能够选择Open In Other Browers

               依次打开:File -> Preferences  -> Settings  -> Extensions  -> plugin open-in-brower  ->Auto Complete: Extra Paths (Edit in settings.json)而后在打开的settings.json配置文件中添加:

//若是是火狐,就设置firefox
"
open-in-browser.default": "chrome",

 19.vscode利用远程服务器环境调试项目

这个仍是很好用的,能够不须要在windows服务器上安装python执行环境了。并且,python中的一些与系统操做相关的模块,windows上安装起来也很是麻烦。

第一步:按下快捷键Ctrl+Shift+X,进入插件管理页面,搜索并安装插件Remote Development

第二步:windows上安装openssh客户端,这里提供一个使用powershell安装的方法

首先,以管理员身份打开powershell

而后,输入命令在线查询可获取的安装包 Get-WindowsCapability -Online | ? Name -like 'OpenSSH*'

最后,若是状态显示NotPresent的话,可使用命令进行安装,命令为Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0

提示:随着 Windows 10 2018 年 4 月更新的发布,OpenSSH 客户端已正式推出并在 Windows 10 中默认安装。

补充:有些人的电脑系统多是windows7的,这里再提供一个在windows7上安装openssh客户端的方法

首先,下载cygwin,下载网址为: https://www.cygwin.com/

 

而后,安装它,安装过程当中,当出现选择要安装的包时,咱们将View切换为Full,并在搜索框中搜索openssh,在出现的搜索结果中,咱们将openssh中的skip改成8.1p1-1,而后再点击下一步完成安装。以下图,下图中由于我已经安装过了,因此openssh这里没有显示skip:

 

 再而后,咱们须要将Cygwin安装目录下的bin目录的绝对路径添加到Path环境变量中。Cygwin默认的安装路径为:C:\cygwin64,因此咱们须要将C:\cygwin64\bin添加到Path环境变量中,以下图所示:

 

 最后,验证一下。咱们打开cmd,输入ssh回车看看是否有输出,有输出信息就表示openssh客户端安装成功了:

备注:这个Cygwin软件被安装上后,不但可使用ssh客户端了,另外不少linux上的命令咱们也均可以在cmd中使用了,好比ls和pwd等。缘由就是这些命令工具都被提供在C:\cygwin64\bin目录下。你能够到这个目录下看看。挺好的软件,给个大大的赞。

第三步:准备一台centos虚拟机或者ubuntu虚拟机,确保虚拟机上的ssh server服务已经开启,并容许远程链接。好比我准备的是centos7虚拟机,IP地址为192.168.247.133

第四步:按下快捷键ctrl+shift+p  搜索Remote-SSH:Settings,在打开的页面中,点击Edit in settings.json,在其中添加"remote.SSH.showLoginTerminal": true,以下图:

 第五步:点击左下角的绿色图标,选择Remote-SSH:Connect to Host  而后点击 Configure SSH Hosts  而后选择点第一个config,默认应该是一个空白的文件,在其中添加以下的配置:

Host Centos7.5_python3
    HostName 192.168.247.133
    Port 22
    User root

备注:其中Host后面的名称,能够随便命名,HostName后面的IP地址是准备的虚拟机IP地址,Port后跟的是ssh server服务监听的端口号,默认是22,User后跟的是远程链接的用户名,我这里使用超级用户链接。

这里补充一点

每次链接远程服务器,打开项目都要输入一次密码,是否很烦?(固然我并无以为烦)若是有人以为烦的话,能够先在本地windows系统和远程服务器之间作好ssh免密登录,而后在上面这个config文件中,在User配置下一行(缩进和User要一致),添加IdentityFile C:\Users\...\.ssh\id_rsa便可,其中IdentityFile参数后面跟的是windows上的rsa私钥文件。

第六步:点击vscode左边栏的远程链接图标,以下:

第七步:点击配置后的远程虚拟机名称旁边的那个按钮,输入密码进行登录到服务器上,以下:

备注,若是vscode初次链接这台虚拟机的话,那么须要等待几分钟,由于vscode要作一些初始化工做。

第八步:连上虚拟机后,能够经过下图中标识的顺序打开远程服务器上的项目,固然每次打开项目都是须要再次输入密码的。这也是为了安全考虑。

在打开的项目中新建文件,删除文件,修改文件等操做,不须要再次输入密码。

第九步:运行项目或测试脚本的方法

感受这个功能,在必定程度上,均可以代替secure crt或xshell远程链接工具和ftp上传下载客户端了。很强大。

补充:

没有语法检查,代码自动提示和补全功能,开发真的是一个很难受的事情,那么怎么在远程服务器上使用这些功能呢?下面就是补全这一点的方法:

首先:按下快捷键Ctrl+Shift+X,进入插件管理页面,搜索python,而后,点击Install in SSH:Centos7.5_python3,以下图:

而后:在打开的项目中,生成launch.json和settings.json这两个配置文件,方法在最上面,和配置windows本地开发环境同样,咱们在settings.json中配置一个远程服务器上的python解释器,以下图:

最后:运行python文件的方法

第十步:从新打开远程服务器上项目的方法

点击File,点击Close Folder,这个操做,会从新链接服务器。

也没找到其它的方法,就这么作吧。

相关文章
相关标签/搜索