为什么 VScode python 终端和交互式 window 之间的输出不同?
Why outputs differ between VScode python terminal & Interactive window?
我在 VScode 上运行这段代码:
a = input("a : ")
b = int(a) + 2
print(f"a:{a},b:{b}")
Python终端上的输出:
a : b = int(a) + 2
>>> print(f"a:{a},b:{b}")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'b' is not defined
Interactive window 上的输出 input 12 :
a:12,b:14
这里有什么问题?
P.S. 类似的终端问题在这个线程中,但仍然没有任何解决方案。
Why there are different outputs here?
将完整代码添加到文件中,保存。点击 f.e。 F5 至 debug/run 程序。
您可能需要select
到运行吧。它将在“终端”中执行:
输入一个数字:
回车:
如果您将所有代码放入 copy/paste 缓冲区并将其“粘贴”到交互式控制台中,它将逐行执行。
基本上你粘贴
a = input("a: ")
然后它需要你的下一行
b = int(a) + 2
作为您的输入并将其存储在a
.
中
然后执行
print(f"a:{a},b:{b}")
并抱怨 b
因为你的行 b = int(a) + 2
被用作 input()
并且现在作为字符串存储在 a
.
中
很简单
如果您在 python 终端中写入 a = input("a : ")
,它会执行,请参阅此
此外,如果我复制您的代码并将其粘贴到终端中,那么它看起来像这样
-> 如果你在这张图片中看到 b = int(a) + 2 作为 a 的输入。因此你得到错误
b is not defined
结论
在您编写 a = input("a : ")
时,您需要在此处提供输入示例(12)
然后写 b = int(a) + 2
然后 print(f"a:{a}:b{b}")
感谢大家的帮助。我从答案中发现 Terminal & Interactive window 的行为各不相同。
Terminal : 逐行执行代码。因此,在块的第一行输入一次代码块在这里效果不佳。
交互式 window : 可以使用代码块并且 act/execute 比终端更智能,正如您在问题的输出中看到的那样。
我在 VScode 上运行这段代码:
a = input("a : ")
b = int(a) + 2
print(f"a:{a},b:{b}")
Python终端上的输出:
a : b = int(a) + 2
>>> print(f"a:{a},b:{b}")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'b' is not defined
Interactive window 上的输出 input 12 :
a:12,b:14
这里有什么问题?
P.S. 类似的终端问题在这个线程中,但仍然没有任何解决方案。 Why there are different outputs here?
将完整代码添加到文件中,保存。点击 f.e。 F5 至 debug/run 程序。
您可能需要select
到运行吧。它将在“终端”中执行:
输入一个数字:
回车:
如果您将所有代码放入 copy/paste 缓冲区并将其“粘贴”到交互式控制台中,它将逐行执行。
基本上你粘贴
a = input("a: ")
然后它需要你的下一行
b = int(a) + 2
作为您的输入并将其存储在a
.
然后执行
print(f"a:{a},b:{b}")
并抱怨 b
因为你的行 b = int(a) + 2
被用作 input()
并且现在作为字符串存储在 a
.
很简单
如果您在 python 终端中写入 a = input("a : ")
,它会执行,请参阅此
此外,如果我复制您的代码并将其粘贴到终端中,那么它看起来像这样
-> 如果你在这张图片中看到 b = int(a) + 2 作为 a 的输入。因此你得到错误
b is not defined
结论
在您编写 a = input("a : ")
时,您需要在此处提供输入示例(12)
然后写 b = int(a) + 2
然后 print(f"a:{a}:b{b}")
感谢大家的帮助。我从答案中发现 Terminal & Interactive window 的行为各不相同。
Terminal : 逐行执行代码。因此,在块的第一行输入一次代码块在这里效果不佳。
交互式 window : 可以使用代码块并且 act/execute 比终端更智能,正如您在问题的输出中看到的那样。