繁体   English   中英

如何使用空行获取多行输入-Python

[英]How to get multiline input with empty lines - Python

我可以通过此循环获取多行输入,但是一旦有空行它就会停止

    lines = []
    line = input()
    while True:
        if line:
            line = input()
            lines.append(line)

        else:
            return lines
            break

例如我如何获得输入

1 cup butter, melted
3 cups white sugar
1 tablespoon vanilla extract
4 eggs


1 1/2 cups all-purpose flour
1 cup unsweetened cocoa powder
1 teaspoon salt
1 cup semisweet chocolate chips 

您需要使用一些东西来标记输入的结尾。 现在,您的代码停在空行上。 因为line获得评估为False的空白值。 这样您的迭代就中断了。 您可以使用标记。 例如, end_of_list;

lines = []
line = input()
while True:
    if line != 'end_of_list;': 
        line = input()
        lines.append(line)

    else:
        return lines
        break

您还可以添加更多条件以避免附加空白值。 这取决于您的目标。

发生这种情况的原因是,如果line =“”(空文本)

您的IF LINE:将其置为False,然后返回行并中断

所以如果你想改变你

if line or line == "":

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM