vscode终止python运行_vscode+python 使用的一些些感受

(一)编辑器选择。Pycharm Or Vscode,最终我还是坚持用了Vscode。

vscode :更好看,UI、字体等整体给人感觉要好看。

vscode更轻量化,软件大小200+M,比pycharm小多了。

响应更快,打开vscode几秒钟,打开pycharm 至少30s,而且在Linux与win10 上使用pycharm简直卡爆了(也可能是我机器不好),曾经有几次卡死机的悲惨经历。事实上,vscode 的插件化运行方式,确实是对机器性能要求更低。

跨平台兼容更好,vscode 本就是微软旗下的在win10上兼容更好,在Linux也不错,使用至少比pycharm顺畅一些。

更自由,非常多的插件支持。

支持多种编程语言,JS、C、Java 等等。如果不仅写python,也做一些前端的工作, 那只用vscode这一个编辑器岂不爽哉。

vscode进步很快, 更新很快。

vscode 功能其实比较全的,有许多其他IDE能做的事情,它也能做,只是要研究,要配置,这一点是有一些门槛,及会多花不少时间踩坑的。

免费。

pycharm :专业for python,工业级。

大型项目肯定 pycharm 更适合。

使用上手更快,需要配置的东西更少。周围使用的人多,需要配置什么,直接发配置文件,import 一下搞定。

用的人多,有问题,其他人肯定都趟过坑,问一下肯定有回答。

收费软件,一年正版至少几大百。

大、卡。

(二)在vscode中配置python环境安装virtualenv,创建虚拟环境;pip3 install virtualenv --index https://pypi.tuna.tsinghua.edu.cn/simple/

创建虚拟环境,进入虚拟环境测试;

打开vscode, 配置setting.json;

更具的步骤,见文档 xxx(抱歉,之后补上)

(三)vscode 写python的插件

在vscode 上编写多数语言,都需要相应的插件来支撑语法美化、代码静态检查、格式化、调试等功能。(截图我所使用的部分插件)

插件在vscode 中搜索就可直接添加,非常方便。

3.0 插件名:中文(简体)语言包

3.1 插件名:Python

Python 插件是由官方开发的,体验非常不错。

3.2 插件名:One Dark Pro

暗色系的主体。

3.3 插件名:Python Extension Pack

python 的插件扩展包,包括了几个常用的插件:Python - 高亮、debug、格式化、测试等等功能的官方插件;

MagicPython - 语法高亮、美化等功能;

Jinja - Jinja template language support for Visual Studio Code.

Django - 使用django 相关的;

3.4 插件名: Bracket Pair Colorizer 2

彩虹色的各种括号,每一对括号是一个颜色, 在大量括号使用时,有效的帮助区分阅读, 推荐。

3.5 插件名:Settings Sync

同步vscode 的配置, 在换电脑时非常方便。 (只使用过一次,使用频率非常低的插件 )

3.6 插件名:TabNine

全语言的智能补全工具,刚使用不久, 还没什么感觉。

3.7 插件名:Beautify

代码美化插件。(一直有安装,所以没有注意安装、 不安装 的区别在那里~)

(四)vscode 最常用的快捷键(Mac版)

1)command+shift +P 对编辑器进行操作命令,也可以用来查找文件;

2) command+T 在打开的工作区中,查找选中的函数。 “ps: 由于vscode的配置还没研究清楚,部分引用的

其他文件中写的类、方法,不能直接跳转定义,要知道项目大了,函数分布在不同的文件中,而且有

层层的引用关系,不能直接跳转定义的地方,查找起来是非常费时的,现在有了command + T, 算

是比较优雅的解决了问题。”

3) command+shift+F 跨文件关键字全文检索。 比如要找函数在其他文件是否有分布,搜索一下就知道了。

4)option+shift+向下箭头 在下面一行重复上一行内容

5)command+F2 批量替换。 会先生成多个光标

6)command+option+向下箭头 在不同行插入光标

这里是我常用的,比较重要的快捷键。

(五)代码检查工具

一行仅能容纳79个字符? 解决非常苛刻的语法问题—— line to long (E501)。

在命令行中输入:flake8 --help,会显示一下帮助选项,其中一条是:

--max-line-length=n Maximum allowed line length for the entirety of this

run. (Default: 79)

解决方法如下:

# 在vscode的配置文件 setting.json 中,添加如下语句可以控制每行的最大长度;

"python.linting.flake8Args": ["--max-line-length=200"]

(六)代码格式化工具

我选择的是“black” 这个代码格式化的工具

选择command+shift+p 选择“格式化文档”

(七)重要!!使用vscode 调试代码

7.1 集成调试

修改lanuch.json"name": 该调试显示的名称;

"type": 调试类型;

"program":

"consolo": "internalConsole" 在vscode的“调试控制台”中输出结果, "integratedTerminal" 在vscode 集成的terminal 中输出结果;(在调试时,推荐"internalConsole" ,下面会具体讲到);

"pythonPath": Python解释器的位置;

"request": 必填项,有两种类型,分别是launch和attach,前者的意思就是 VSCode 会打开这个程序然后进入调试,后者的意思是。。。(用不到,还没用过,我也不会。。)

"args": 一些(自定义)的参数。

${file} - the current opened file ;

${workspaceFolder} - the path of the folder opened in VS Code ;

7.2 运行

7.3 断点

7.4 继续、单步跳过、单步调试、单步跳出、重启、停止

可以自行试试,这些按钮的作用。

(八)函数调转定义

之前很长一段时间, 在vscode 中都不能直接跳转从其他文件中引用的类、方法,这在debug过程中比较痛苦,后面也在setting.json 中不断的修改,一直不成功,有一天修改了两行, 第二天重启vscode竟然可以用了。

"python.autoComplete.extraPaths": ["/Users/macos/ext_test","/Users/macos/ext_test/mxactor"],

"python.jediEnabled": false,

主要起作用的应该是“python.autoComplete.extraPath”, 自定义模块位于非标准位置,将位置添加到python.autoComplete.extraPaths设置并重新启动VS Code。

(九)创建自定义python代码片段 (snippet)

command+shift+P, 输入“snippet”

(十)非常折磨人的 ”Fatal Python error: PyCOND_WAIT(gil_cond) failed“

在某一天更新vscode到 1.42.1 后, 调试代码出现了问题。

这个问题导致调试一直出bug,而且还是底层的、不知道哪里的、修不好的bug,google 了许久,也问了高手, 但还是不能解决这个bug。

只知道在python3.6及以下会有可能出现这个bug 的, 这个bug 和python 版本、vscode 等可能都有关系。

无奈,只有用python3.8 (行文时,比较新的版本)。

(十一) 包的安装

1)如果用了virtualenv 一定要切到对应的虚拟环境下;

2)推荐pip安装,使用方式 pip install 【包名】 可以最后加上 ==1.2 (1.2 是固定的版本号)

3)pip install -r requirements.txt 如果有包的文件,安装整个包非常快。

4)为了安装更快,在国内推荐清华的镜像源: pip install -r requirements.txt --index https://pypi.tuna.tsinghua.edu.cn/simple/

5)requirements.txt 的写法,例如下所示:

xlsxwriter==1.2.7

pandas==0.20.1

peewee==3.8.2

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值