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之坑爹的字符编码
Sep 28 Python
python处理xml文件的方法小结
May 02 Python
python实现媒体播放器功能
Feb 11 Python
Python实现OpenCV的安装与使用示例
Mar 30 Python
python抓取需要扫微信登陆页面
Apr 29 Python
Django 源码WSGI剖析过程详解
Aug 05 Python
基于python调用psutil模块过程解析
Dec 20 Python
Python3 main函数使用sys.argv传入多个参数的实现
Dec 25 Python
tensorflow2.0与tensorflow1.0的性能区别介绍
Feb 07 Python
python使用matplotlib:subplot绘制多个子图的示例
Sep 24 Python
python如何快速拼接字符串
Oct 28 Python
解决使用Pandas 读取超过65536行的Excel文件问题
Nov 10 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
深入HTTP响应状态码速查表的详解
2013/06/07 PHP
请离开include_once和require_once
2013/07/18 PHP
浅析php静态方法与非静态方法的用法区别
2016/05/17 PHP
PHP中的多种加密技术及代码示例解析
2016/10/20 PHP
PHP7 其他修改
2021/03/09 PHP
JS弹出层的显示与隐藏示例代码
2013/12/27 Javascript
JS实现新浪博客左侧的Blog管理菜单效果代码
2015/10/22 Javascript
jQuery+JSON实现AJAX二级联动实例分析
2015/12/18 Javascript
Bootstrap被封装的弹层
2016/07/20 Javascript
使用jquery判断一个元素是否含有一个指定的类(class)实例
2017/02/12 Javascript
js实现颜色阶梯渐变效果(Gradient算法)
2017/03/21 Javascript
深入理解jquery的$.extend()、$.fn和$.fn.extend()
2017/07/08 jQuery
vue2.0的contextmenu右键弹出菜单的实例代码
2017/07/24 Javascript
vue搜索和vue模糊搜索代码实例
2019/05/07 Javascript
Node.js实现简单的爬取的示例代码
2019/06/25 Javascript
Vue代码整洁之去重方法整理
2019/08/06 Javascript
[01:45]IMBATV TI4前线报道-选手到达
2014/07/07 DOTA
python解析xml模块封装代码
2014/02/07 Python
python实现泊松图像融合
2018/07/26 Python
解决py2exe打包后,总是多显示一个DOS黑色窗口的问题
2019/06/21 Python
Django 静态文件配置过程详解
2019/07/23 Python
Django CBV类的用法详解
2019/07/26 Python
Django Haystack 全文检索与关键词高亮的实现
2020/02/17 Python
奢华时尚的独特视角:La Garçonne
2018/06/07 全球购物
牦牛毛户外探险服装:Kora
2019/02/08 全球购物
为什么要优先使用同步代码块而不是同步方法?
2013/01/30 面试题
保安拾金不昧表扬信
2014/01/15 职场文书
《沙漠中的绿洲》教学反思
2014/04/24 职场文书
计算机网络专业自荐书
2014/06/09 职场文书
企业标语口号
2014/06/10 职场文书
会计岗位说明书
2014/07/29 职场文书
三好学生事迹材料
2014/12/24 职场文书
小学语文新课改心得体会
2016/01/22 职场文书
《自己去吧》教学反思
2016/02/16 职场文书
中秋节英文祝福语句(14句)
2019/09/11 职场文书
python爬虫selenium模块详解
2021/03/30 Python