V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
mikicomo
V2EX  ›  问与答

VS Code 如何直接在执行 python 代码

  •  
  •   mikicomo · 2016-01-08 11:45:16 +08:00 · 22608 次点击
    这是一个创建于 3033 天前的主题,其中的信息可能已经有所发展或是发生改变。

    像 sublime 可以 ctrl+B 直接在 console 中显示出结果, vscode 要想实现这个效果该怎么做呢?

    20 条回复    2016-12-09 16:27:29 +08:00
    plqws
        2
    plqws  
       2016-01-08 12:39:57 +08:00
    F5
    jonechenug
        3
    jonechenug  
       2016-01-08 12:58:18 +08:00 via Android
    配置一下就行了,指定运行的程序(windows 和 linux 需要详细位置,mac 直接写 Python 就行了),处理文件${file}, Ctrl+shit+b 运行
    mikicomo
        4
    mikicomo  
    OP
       2016-01-08 14:29:29 +08:00
    @hahastudio thanks:-D
    mikicomo
        5
    mikicomo  
    OP
       2016-01-08 15:34:58 +08:00
    @hahastudio 刚才搜索了一下, ctrl+shift+p 找不到和 task 相关的条目啊?最新版的 vscode0.10.6
    hahastudio
        6
    hahastudio  
       2016-01-08 15:52:56 +08:00
    @mikicomo 先有一个 workspace ,打开一个文件夹之后再试
    mikicomo
        7
    mikicomo  
    OP
       2016-01-08 17:06:46 +08:00
    @hahastudio
    Failed to launch external program C:\Python35
    app.py.
    spawn C:\Python35 ENOENT
    spawn C:\Python35 ENOENT
    spawn C:\Python35 ENOENT

    这是什么情况呢...
    mikicomo
        8
    mikicomo  
    OP
       2016-01-08 22:52:45 +08:00
    @mikicomo 路径设置错了,改成 C:\\Python35\\python 就行了,而且得把 app.py 改成你需要执行的那个文件的名字,可是这样的话必须每 run 一个新的文件都要重新设置下,有办法可以改进么
    mikicomo
        9
    mikicomo  
    OP
       2016-01-08 23:14:22 +08:00
    @hahastudio

    结合
    @jonechenug 所说的之后
    {
    "version": "0.1.0",
    "command": "C:\\Python35\\python",
    "args": ["${file}"],
    "problemMatcher": {
    "fileLocation": ["relative", "${workspaceRoot}"],
    "pattern": {
    "regexp": "^(.*)+s$",
    "message": 2
    }
    }
    }

    如此配置正确! binggo !
    jonechenug
        10
    jonechenug  
       2016-01-09 00:20:47 +08:00 via Android
    其实你看一下配置文件就清楚了,直接运行,提示缺乏配置文件,启用配置文件,往下拉可以看到每个配置选项有注释,当然英语差也是个问题。慢慢摸索,我也是前几天才用 vscode 的
    mikicomo
        11
    mikicomo  
    OP
       2016-01-09 13:23:46 +08:00
    @jonechenug 嗯,发现 vscode 有个问题,就是一旦出现代码错误的情况,例如: print ( r"\"),vscode 就会直接卡死在那了,而 sublime 不会,他会提示错误
    jonechenug
        12
    jonechenug  
       2016-01-09 17:01:01 +08:00 via Android
    你的配置文件比我多,我只改了三个地方, Python 路径,输出到控制台,处理的文件。我在 Ubuntu 下运行的,有错误是不能直接运行的。
    mikicomo
        13
    mikicomo  
    OP
       2016-01-09 17:59:28 +08:00
    @jonechenug 你是怎么设置的呢?
    jonechenug
        14
    jonechenug  
       2016-01-09 18:07:21 +08:00 via Android
    "version": "0.1.0",
    "command": "C:\\Python35\\python",
    "isShellCommand":"true",
    "shadowOutput":"always",
    "args": ["${file}"]
    没了,就这样
    mikicomo
        15
    mikicomo  
    OP
       2016-01-09 18:08:45 +08:00
    @jonechenug 嗯嗯,研究了下他给的配置文件,结合你说的,懂了,改好啦,谢了~
    mikicomo
        16
    mikicomo  
    OP
       2016-01-09 18:10:33 +08:00
    @jonechenug "showOutput": "silent", 和 always 有啥区别?
    jonechenug
        17
    jonechenug  
       2016-01-09 19:48:31 +08:00 via Android
    @mikicomo 字面意思, always 是会一直输出在输出界面, silent 就是默认的意思。这两个区别不大。
    jotsai
        18
    jotsai  
       2016-04-14 17:41:01 +08:00
    @mikicomo 请问你是怎么解决代码错误导致 vscode 卡死的问题?
    paulzhousz
        19
    paulzhousz  
       2016-05-12 14:06:02 +08:00
    virtualenv 怎么办 ?
    formulahendry
        20
    formulahendry  
       2016-12-09 16:27:29 +08:00   ❤️ 2
    可以使用 Code Runner 插件: https://marketplace.visualstudio.com/items?itemName=formulahendry.code-runner
    Ctrl+Alt+N 直接运行,不需要如何配置~ 如果有任何建议或者发现 bug ,可以到 GitHub 给我发 issue : https://github.com/formulahendry/vscode-code-runner/issues
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3207 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 36ms · UTC 12:14 · PVG 20:14 · LAX 05:14 · JFK 08:14
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.