Python 3:如何在使用input()

时间:2017-03-18 06:04:05

标签: python python-3.x input file-io line-breaks

while count != 5:

  input_text = input("Please insert a number of lines of text \n")

  if count != 5:
    print("Count is " + str(count))

对于上面的代码,当提示输入时,如果我粘贴了多个换行符的文本。代码将运行换行符的数量!我只是想让它为整个文本运行ONCE。

有人可以帮忙吗?

2 个答案:

答案 0 :(得分:1)

您可以使用sys.stdin.read(),但需要您手动发送EOT字符:

>>> import sys
>>> x = sys.stdin.read()
the quick brown fox
jumped over the lazy
dog
>>> print(x)
the quick brown fox
jumped over the lazy
dog

>>>

注意,在我粘贴后的最后,我使用 Enter 然后 ctrl-D

答案 1 :(得分:0)

我没有找到你问题的确切答案但是我注意到当你在shell中复制多行文本时它只将第一行文本分配给input_text,然后再次运行并指定第二行line到input_text,运行agains和input_text的第三行。你看。

我认为输入语句不适用于多行,但您可以找到一些解决方法。

此处的代码显示了每次循环运行时变量如何更改您复制到shell中的下一行:

   $all_cache = $this->cache->cache_info();
     foreach ($all_cache as $cache_id => $cache) :              
            $this->cache->delete($cache_id);              
   endforeach;