VSCode下配置python调试运行环境的方法


Posted in Python onApril 06, 2018

VSCode配置python调试环境

很久之前的一个东东,翻出来看看

  • VSCode配置python调试环境
    * 1.下载python解释器
    * 2.在VSCode市场中安装Python插件
    * 4.在用户设置里加两条
    * 5.接下来是正式的调试了
    • 1080 两个数的平方和
      • Input
      • Output
      • Input示例
      • Output示例

1.下载python解释器

python 3.6.3 for windows

安装到系统某个路径例如C:\Python36
最好添加到Path,也可以不加

2.在VSCode市场中安装Python插件

VSCode下配置python调试运行环境的方法

3.同样是打开一个文件夹,新建一个.py文件(这样容易识别项目,vscode就需要新建一个文件夹)
4.同样是launch.json文件和tasks.json文件

launch.josn

{
 // 使用 IntelliSense 了解相关属性。 
 // 悬停以查看现有属性的描述。
 // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
 "version": "0.2.0",
 "configurations": [
  {
   "name": "Python",
   "type": "python",
   "request": "launch",
   "stopOnEntry": false,//是否在第一条语句时程序停止,下面的这个选项都一样
   "pythonPath": "C:/Python34/python",//可执行文件路径
   "program": "${file}",
   "cwd": "${workspaceRoot}",
   "env": {},
   "envFile": "${workspaceRoot}/.env",
   "debugOptions": [
    "WaitOnAbnormalExit",
    "WaitOnNormalExit",
    "RedirectOutput"
   ]
  },
  {
   "name": "PySpark",
   "type": "python",
   "request": "launch",
   "stopOnEntry": true,
   "osx": {
    "pythonPath": "${env:SPARK_HOME}/bin/spark-submit"
   },
   "windows": {
    "pythonPath": "${env:SPARK_HOME}/bin/spark-submit.cmd"
   },
   "linux": {
    "pythonPath": "${env:SPARK_HOME}/bin/spark-submit"
   },
   "program": "${file}",
   "cwd": "${workspaceRoot}",
   "env": {},
   "envFile": "${workspaceRoot}/.env",
   "debugOptions": [
    "WaitOnAbnormalExit",
    "WaitOnNormalExit",
    "RedirectOutput"
   ]
  },
  {
   "name": "Python Module",
   "type": "python",
   "request": "launch",
   "stopOnEntry": false,
   "pythonPath": "${config:python.pythonPath}",
   "module": "module.name",
   "cwd": "${workspaceRoot}",
   "env": {},
   "envFile": "${workspaceRoot}/.env",
   "debugOptions": [
    "WaitOnAbnormalExit",
    "WaitOnNormalExit",
    "RedirectOutput"
   ]
  },
  {
   "name": "Integrated Terminal/Console",
   "type": "python",
   "request": "launch",
   "stopOnEntry": false,
   "pythonPath": "${config:python.pythonPath}",
   "program": "${file}",
   "cwd": "",
   "console": "integratedTerminal",
   "env": {},
   "envFile": "${workspaceRoot}/.env",
   "debugOptions": [
    "WaitOnAbnormalExit",
    "WaitOnNormalExit"
   ]
  },
  {
   "name": "External Terminal/Console",
   "type": "python",
   "request": "launch",
   "stopOnEntry": false,
   "pythonPath": "${config:python.pythonPath}",
   "program": "${file}",
   "cwd": "",
   "console": "externalTerminal",
   "env": {},
   "envFile": "${workspaceRoot}/.env",
   "debugOptions": [
    "WaitOnAbnormalExit",
    "WaitOnNormalExit"
   ]
  },
  {
   "name": "Django",
   "type": "python",
   "request": "launch",
   "stopOnEntry": false,
   "pythonPath": "${config:python.pythonPath}",
   "program": "${workspaceRoot}/manage.py",
   "cwd": "${workspaceRoot}",
   "args": [
    "runserver",
    "--noreload",
    "--nothreading"
   ],
   "env": {},
   "envFile": "${workspaceRoot}/.env",
   "debugOptions": [
    "WaitOnAbnormalExit",
    "WaitOnNormalExit",
    "RedirectOutput",
    "DjangoDebugging"
   ]
  },
  {
   "name": "Flask",
   "type": "python",
   "request": "launch",
   "stopOnEntry": false,
   "pythonPath": "${config:python.pythonPath}",
   "program": "fully qualified path fo 'flask' executable. Generally located along with python interpreter",
   "cwd": "${workspaceRoot}",
   "env": {
    "FLASK_APP": "${workspaceRoot}/quickstart/app.py"
   },
   "args": [
    "run",
    "--no-debugger",
    "--no-reload"
   ],
   "envFile": "${workspaceRoot}/.env",
   "debugOptions": [
    "WaitOnAbnormalExit",
    "WaitOnNormalExit",
    "RedirectOutput"
   ]
  },
  {
   "name": "Flask (old)",
   "type": "python",
   "request": "launch",
   "stopOnEntry": false,
   "pythonPath": "${config:python.pythonPath}",
   "program": "${workspaceRoot}/run.py",
   "cwd": "${workspaceRoot}",
   "args": [],
   "env": {},
   "envFile": "${workspaceRoot}/.env",
   "debugOptions": [
    "WaitOnAbnormalExit",
    "WaitOnNormalExit",
    "RedirectOutput"
   ]
  },
  {
   "name": "Pyramid",
   "type": "python",
   "request": "launch",
   "stopOnEntry": true,
   "pythonPath": "${config:python.pythonPath}",
   "cwd": "${workspaceRoot}",
   "env": {},
   "envFile": "${workspaceRoot}/.env",
   "args": [
    "${workspaceRoot}/development.ini"
   ],
   "debugOptions": [
    "WaitOnAbnormalExit",
    "WaitOnNormalExit",
    "RedirectOutput",
    "Pyramid"
   ]
  },
  {
   "name": "Watson",
   "type": "python",
   "request": "launch",
   "stopOnEntry": true,
   "pythonPath": "${config:python.pythonPath}",
   "program": "${workspaceRoot}/console.py",
   "cwd": "${workspaceRoot}",
   "args": [
    "dev",
    "runserver",
    "--noreload=True"
   ],
   "env": {},
   "envFile": "${workspaceRoot}/.env",
   "debugOptions": [
    "WaitOnAbnormalExit",
    "WaitOnNormalExit",
    "RedirectOutput"
   ]
  },
  {
   "name": "Attach (Remote Debug)",
   "type": "python",
   "request": "attach",
   "localRoot": "${workspaceRoot}",
   "remoteRoot": "${workspaceRoot}",
   "port": 3000,
   "secret": "my_secret",
   "host": "localhost"
  }
 ]
}

tasks.json

{
  // See https://go.microsoft.com/fwlink/?LinkId=733558
  // for the documentation about the tasks.json format
  "version": "2.0.0",
  "tasks": [
   {
    "taskName": "echo",
    "type": "shell",
    "command": "C:\\Python34\\python",//Python可执行文件路径
    "args": ["${file}"]
   }
  ]
 }

4.在用户设置里加两条

settings.json

"python.pythonPath": "C:\\Python34\\python" ,//路径
 "python.linting.enabled": false,//忘了是什么东西了,反正有用

Linting (Prospector, Pylint, pycodestyle, Flake8, pylama, pydocstyle, mypy with config files and plugin

静态代码扫描(可以理解为代码语法和格式错误提示,支持多种linter)

5.接下来是正式的调试了

VSCode下配置python调试运行环境的方法

默认是Python选项
按\(<F5>\)启动调试
然后在

VSCode下配置python调试运行环境的方法

中有一些东西就是这样
但是这个默认的\(python\)选项并不能由用户输入
所以有

VSCode下配置python调试运行环境的方法

这个和下面的那个都可以
这个Intergrated……的选项是下图的东东

VSCode下配置python调试运行环境的方法

其实这个可以直接

VSCode下配置python调试运行环境的方法

直接当成cmd来用同样可以由用户输入
然后那个External……的选项只不过是开了一个控制台窗口

VSCode下配置python调试运行环境的方法

2333……
剩下的可以自己试试
说不定有惊喜

翻出很久之前做的一道题目
用py3写的
刚刚一直在用的test.py就是用的这道题的代码

1080 两个数的平方和

基准时间限制:1 秒 空间限制:131072 KB 分值: 5
给出一个整数N,将N表示为2个整数i j的平方和(i <= j),如果有多种表示,按照i的递增序输出。
例如:

(注:3 11同11 3算1种)

Input

一个数N()

Output

共K行:每行2个数,i j,表示
如果无法分解为2个数的平方和,则输出

Input示例

130

Output示例

3 11
7 9

Python 相关文章推荐
python爬虫常用的模块分析
Aug 29 Python
CentOS 6.X系统下升级Python2.6到Python2.7 的方法
Oct 12 Python
使用Pyinstaller的最新踩坑实战记录
Nov 08 Python
python生成不重复随机数和对list乱序的解决方法
Apr 09 Python
Python Requests模拟登录实现图书馆座位自动预约
Apr 27 Python
Python实现的查询mysql数据库并通过邮件发送信息功能
May 17 Python
python实现烟花小程序
Jan 30 Python
Python Selenium 之关闭窗口close与quit的方法
Feb 13 Python
Keras使用tensorboard显示训练过程的实例
Feb 15 Python
keras小技巧——获取某一个网络层的输出方式
May 23 Python
如何用Matplotlib 画三维图的示例代码
Jul 28 Python
Python pathlib模块使用方法及实例解析
Oct 05 Python
如何使用VSCode愉快的写Python于调试配置步骤
Apr 06 #Python
详解django三种文件下载方式
Apr 06 #Python
Anaconda入门使用总结
Apr 05 #Python
致Python初学者 Anaconda入门使用指南完整版
Apr 05 #Python
Windows下anaconda安装第三方包的方法小结(tensorflow、gensim为例)
Apr 05 #Python
Python批量合并有合并单元格的Excel文件详解
Apr 05 #Python
[原创]windows下Anaconda的安装与配置正解(Anaconda入门教程)
Apr 05 #Python
You might like
发挥语言的威力--融合PHP与ASP
2006/10/09 PHP
mysql 搜索之简单应用
2007/04/27 PHP
php中的一些数组排序方法分享
2012/07/20 PHP
PHP imagegrabscreen和imagegrabwindow(截取网站缩略图)的实例代码
2013/11/07 PHP
PHP使用curl_multi实现并发请求的方法示例
2018/04/29 PHP
基于jQuery的图片大小自动适应实现代码
2010/11/17 Javascript
JS HTML5 音乐天气播放器(Ajax获取天气信息)
2013/05/26 Javascript
IE下通过a实现location.href 获取referer的值
2014/09/04 Javascript
jQuery多媒体插件jQuery Media Plugin使用详解
2014/12/19 Javascript
AngularJS自动表单验证
2016/02/01 Javascript
JS作用域深度解析
2016/12/29 Javascript
浅谈JavaScript中的apply/call/bind和this的使用
2017/02/26 Javascript
MUI实现上拉加载和下拉刷新效果
2017/06/30 Javascript
详解在Vue中使用TypeScript的一些思考(实践)
2018/07/06 Javascript
vue-cli3.0 脚手架搭建项目的过程详解
2018/10/19 Javascript
如何使用 vue + d3 画一棵树
2018/12/03 Javascript
使用Vue.js 和Chart.js制作绚丽多彩的图表
2019/06/15 Javascript
[01:00:04]DOTA2上海特级锦标赛B组小组赛#1 Alliance VS Spirit第二局
2016/02/26 DOTA
python网络编程学习笔记(五):socket的一些补充
2014/06/09 Python
Python smallseg分词用法实例分析
2015/05/28 Python
python实现list由于numpy array的转换
2018/04/04 Python
使用celery执行Django串行异步任务的方法步骤
2019/06/06 Python
在Pandas中处理NaN值的方法
2019/06/25 Python
Python with关键字,上下文管理器,@contextmanager文件操作示例
2019/10/17 Python
python隐藏类中属性的3种实现方法
2019/12/19 Python
解决Jupyter notebook更换主题工具栏被隐藏及添加目录生成插件问题
2020/04/20 Python
matlab中二维插值函数interp2的使用详解
2020/04/22 Python
简单的命令查看安装的python版本号
2020/08/28 Python
基于Python实现天天酷跑功能
2021/01/06 Python
使用canvas绘制超炫时钟
2014/12/17 HTML / CSS
德国狗狗用品在线商店:Schecker
2017/03/17 全球购物
Nike挪威官网:Nike.com (NO)
2018/11/26 全球购物
办公室主任职责范文
2013/11/08 职场文书
医院护士的求职信范文
2013/12/26 职场文书
党员干部一句话承诺
2014/05/30 职场文书
民警忠诚教育心得体会
2016/01/23 职场文书