为什么以及如何在 Python 中使用多行输入

Why and how multiple lines input works in Python

在你举报我重复之前,让我先 link 类似的主题,其中说明如何编写代码,但不要说明它是如何工作的:

现在读取多行的代码:

'''
input data:
line 1
line 2
line 3
'''

line_holder = []

while True:
    line = input("\nPlease paste here lines :\n")
    if line:
        line_holder.append(line)
    else:
        break
for line in line_holder:
    print(line)

我是怎么理解的:

所以如果有一个输入队列,我还能如何到达它?它是如何存储在计算机上的,为什么我需要构建列表才能看到它?

这是全部的概要 第一行(从line_holder = []开始)将line_holder声明为一个数组,当你需要添加行时。

然后 while True 使它成为一个无限循环(除非在循环内另有指示)

循环内部是一个输入,赋值给变量'line'

然后它检查行中是否有任何内容(如果行),如果有,它会将 'line' 的内容添加到已经声明为 line_holder.[=10 的数组中=]

但是,如果 line(else) 中没有任何内容,那么它会中断循环,然后启动一个 for 循环,用于 line_holder 中的行,它只是将第一行、第二行等分配给可变行,然后打印它,直到 line_holder 中没有任何位置。

希望这为您解决了问题,如有任何问题,请添加评论。

So if there is a queue of inputs, how else can I reach it?
如所写,您的循环不访问队列 - input takes input from stdin ...通常是用户从键盘输入的数据。

How is it stored on the computer ...?
假设您指的是不存在的队列(见上文),但是当您将 line 附加到列表时,您正在 存储 列表中的那一行。

... and why do I need to build list, to see it?
你不需要 - 你可以只打印该行以 see 它,但如果你想稍后使用该数据,你必须将它放在某种容器和 list 很方便。