输入:
359716482
867345912
413928675
398574126
546281739
172639548
984163257
621857394
735492861
我的代码:
print("Enter the array:\n")
userInput = input().splitlines()
print(userInput)
我的问题是,userInput
只接受第一行值但不接受
似乎在第一行之后接受了价值观?
答案 0 :(得分:13)
您可以使用readlines()
文件对象方法:
import sys
userInput = sys.stdin.readlines()
答案 1 :(得分:6)
您可以使用生成器轻松创建一个。这是一个这样的实现。请注意,您可以按空白返回或任何键盘中断以打破输入循环
>>> def multi_input():
try:
while True:
data=raw_input()
if not data: break
yield data
except KeyboardInterrupt:
return
>>> userInput = list(multi_input())
359716482
867345912
413928675
398574126
>>> userInput
['359716482', '867345912', '413928675', '398574126']
>>>
答案 2 :(得分:2)
每个input()
只接受一行。围绕这个的策略:
input()
,直到收到空行input()
,直到用户在类似UNIX的操作系统上执行ctrl-D,此时将引发EOFError,您可以抓住答案 3 :(得分:0)
你好,
您可以尝试根据您的要求使用的这种方法。我在代码上加了一些注释,以解释我要实现的目标。很高兴有机会接触到一些python代码,我是这种语言的新手,但我完全喜欢它!
undeclared
答案 4 :(得分:-1)
lines = []
while True:
s =input("Enter the string or press ENTER for Output: ")
if s:
lines.append(s)
else:
break;
print("OUTPUT: ")
for i in lines:
print (i)
Input:
359716482
867345912
413928675
398574126
546281739
172639548
984163257
621857394
735492861
Output:
359716482
867345912
413928675
398574126
546281739
172639548
984163257
621857394
735492861