(python 3) 当使用raw_input()时,函数为什么要在输入后加上“\n”?

(python 3) When using raw_input(), why does the function add "\n" to the input?

我搜索了 Google 的第一页,但找不到答案。对于 int(raw_input()) 来说,这不会发生很奇怪。但是如果我输入:

a = [raw_input() for i in range(int(raw_input()))]
print(a)

示例输入: 5个 1个 2个 3个 4个 5

输出将是: ['1\n', '2\n', '3\n', '4\n', '5\n']

我知道这与 IDE(我 运行 VSCode)有关,但我不知道如何修复它。谢谢。

在Python3.x中整合了raw_input()input(),去掉了raw_input(),只保留了input()函数,接收任意输入,默认所有输入为字符串处理,returns字符串类型。

当使用Python2.7:

当使用Python3.8:

另外,如果在VS Code中使用python扩展以外的扩展进行调试,请尽量禁用,以免影响结果。

我的环境:

VS 代码:1.52.1(用户设置); OS: Windows_NT x64; VS 代码扩展:Python;皮兰斯;

参考:What's new in Python3.