当前位置: 首页 > 面试题库 >

在Vim中运行Python代码

缑嘉玉
2023-03-14
问题内容

我正在使用Vim编写Python代码,每次我想运行我的代码时,都在Vim中键入以下代码:

:w !python

这令人沮丧,所以我一直在寻找一种更快的方法来在Vim中运行Python代码。从终端执行Python脚本吗?我正在使用Linux。


问题答案:

如何将-添加autocmd到您的~/.vimrc-file,创建映射:

autocmd FileType python map <buffer> <F9> :w<CR>:exec '!python3' shellescape(@%, 1)<CR>
autocmd FileType python imap <buffer> <F9> <esc>:w<CR>:exec '!python3' shellescape(@%, 1)<CR>

然后您可以按<F9>执行当前缓冲区python

说明:

  • autocmd:Vim将自动执行的命令{event}(此处:如果您打开python文件)
  • [i]map:创建<F9>在插入/普通模式下的键盘快捷键
  • <buffer>:如果打开了多个缓冲区/文件:只需使用活动的缓冲区/文件
  • <esc>:离开插入模式
  • :w<CR>:保存文件
  • !:在您的shell中运行以下命令(尝试:!ls
  • %:替换为活动缓冲区的文件名。 但是 由于它可以包含空格和其他“不好的”东西,所以最好不要写:python %,而要使用:
  • shellescape:转义特殊字符。该1用反斜杠手段

TL; DR:第一行将在正常模式下工作,一旦按下<F9>它,首先保存文件,然后使用python运行文件。第二个做同样的事情,但是先离开插入模式



 类似资料:
  • 问题内容: 我想知道Vim中是否有任何键映射可以让我缩进某些代码行(无论这些行是在可视模式下选择的,还是在当前光标位置上方/下方的 n 行)。 所以基本上是可以转换以下内容的东西 至 我可以使用或注释掉相关行。理想情况下,如果给定的行已被注释掉,我也希望使用相同的键盘映射来取消注释。 问题答案: 步骤1: 转到要评论的第一行的第一列。 步骤2: 按:+,然后选择要注释的行: 步骤3: - spac

  • 我似乎一直在尝试在vscode中运行python3文件。我注意到右上角运行代码的三角形按钮也不再是绿色。 我已经为python3建立了自己的venv,并且安装了numpy包——我已经检查了< code>pip list,它在那里,并且在导入时调用这个包中的任何方法时运行良好。 当我右键单击vscode中的文件并单击在终端中运行Python文件时-它运行得非常好,并为我提供了所需的输出。 但是,当我

  • 本文向大家介绍Python在线运行代码助手,包括了Python在线运行代码助手的使用技巧和注意事项,需要的朋友参考一下 Python代码运行助手可以让你在线输入Python代码,然后通过本机运行的一个Python脚本来执行代码。原理如下: 在网页输入代码: 点击Run按钮,代码被发送到本机正在运行的Python代码运行助手; Python代码运行助手将代码保存为临时文件,然后调用Python解释器

  • 问题内容: 我使用vim进行编码,尤其是python编码。通常,我想使用python解释器执行当前缓冲区。(例如运行unittests),通常我使用 此场景将与全局python一起正常工作,但我想改为运行virtualenv python。如何在vim中启用virtualenv?是否可以在运行时切换virtualenv? 我正在使用macvim 问题答案: 这是我使用的(很抱歉,突出显示的内容很奇

  • 问题内容: 我真的很喜欢使用sublime text 2编写Python代码,但是,每当我尝试运行具有输入的脚本时,sublime text控制台都会报告错误。因此,我决定尝试,但是我已经搜索了几个小时,却没有找到如何运行Python代码的方法……你们能帮我吗? 我想像使用sublime文本控制台()一样运行代码。我真正想知道的是是否有一种方法可以做到这一点。 先感谢您! 问题答案: 来自http

  • Python代码运行助手可以让你在线输入Python代码,只需要在网页输入代码,然后点击Run按钮,代码被发送到远程执行后,在网页显示代码执行结果: 试试效果 需要支持HTML5的浏览器: IE >= 9 Edge Firefox Chrome Safari # 测试代码: ---- print('Hello, world')