首页 > 解决方案 > 我无法在 vim 中运行 python3 程序

问题描述

我做了一个非常简单的程序:

a = input("Enter a number A : ")

b = input("Enter a number B : ")

print("Below 2 strings concateneted :")

print(a + b)

  1. 当我从 bash 运行它时,我写道:
python3 <my_program.py>

它运作良好

  1. 当我从 vim 运行它时,我在 vim 中打开“my_program.py”,然后写:
:w !python3 

它崩溃并给我这个消息:

Enter a number A : Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
EOFError: EOF when reading a line
  1. 当我从vim打开的终端运行它时,我写道:
:terminal

然后

python3 <my_program.py>

这行得通。

为什么我不能从 vim 执行 python3 程序?

编辑:它与输入功能相关联。如果我直接分配变量它可以工作。欢迎提供更多信息。

标签: python-3.xvim

解决方案


这是因为我的 python 脚本中的输入函数。

因为我想保留这个功能。没办法,打开一个单独的终端。

顺便说一句,可以在 VIM 中打开终端(为方便起见),在 VIM 正常模式下编写:

:vert term

推荐阅读