如何禁用在 Python 3 中触发输入的回车键?
How do I disable the enter key triggering an input in Python 3?
所以我正在尝试制作一个简单的字数统计程序,我希望它能够在不被触发的情况下将输入键作为正在阅读的文章的一部分。 (如果有人不明白,如果我复制粘贴其中包含回车字符的段落,python 将简单地停止在回车字符处接收字符串,因为它认为用户按下了回车,并且它会输入不完整)。我认为我不能解释得太清楚,所以请尝试将其复制粘贴到代码中:
第 1 行:My name is Jack.
第 2 行:Jack is my name.
它只接受第一行。
这个问题有解决方法吗?或者我应该采取完全不同的方法吗?
代码:
#Count words in an essay
import time
SA = input('Copy paste essay: \n')
word_list = SA.split(' ')
print (str(len(word_list)) + ' is the number of words in your essay')
在python3.x中,您可以使用sys.stdin.read()
读取控制台上的多行输入。
>>> import sys
>>> text = sys.stdin.read()
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
^Z
>>> print(text)
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
>>>
要退出输入模式,您必须使用 Ctrl
+Z
,它在上面的 shell 片段中显示为 ^Z
。
所以我正在尝试制作一个简单的字数统计程序,我希望它能够在不被触发的情况下将输入键作为正在阅读的文章的一部分。 (如果有人不明白,如果我复制粘贴其中包含回车字符的段落,python 将简单地停止在回车字符处接收字符串,因为它认为用户按下了回车,并且它会输入不完整)。我认为我不能解释得太清楚,所以请尝试将其复制粘贴到代码中:
第 1 行:My name is Jack.
第 2 行:Jack is my name.
它只接受第一行。 这个问题有解决方法吗?或者我应该采取完全不同的方法吗?
代码:
#Count words in an essay
import time
SA = input('Copy paste essay: \n')
word_list = SA.split(' ')
print (str(len(word_list)) + ' is the number of words in your essay')
在python3.x中,您可以使用sys.stdin.read()
读取控制台上的多行输入。
>>> import sys
>>> text = sys.stdin.read()
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
^Z
>>> print(text)
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
>>>
要退出输入模式,您必须使用 Ctrl
+Z
,它在上面的 shell 片段中显示为 ^Z
。