c++代码
while( cin >> variable)
{
//your code
}
我想把这段代码转换成python,输入是整数流,如下所示:
发布于 2018-06-11 03:35:32
要在python中实现相同的功能,您可以捕获一个EOFError
,例如:
while True:
try:
variable = int(input())
except EOFError:
break
# your code
您可以使用Ctrl-D
手动终止输入列表,否则,如果您通过管道输入输入,例如cat nums | myscript.py
,它将自动终止
在使用赋值表达式的Py3.8中,可以将其更改为
try:
while variable := int(input()):
<do-something-with-variable)
except EOFError:
pass
或者使用上下文管理器抑制异常:
from contextlib import suppress
with suppress(EOFError):
while variable := int(input()):
<do-something-with-variable)
发布于 2018-06-11 03:06:56
使用
s=input("Enter: ")
s=[int(x) for x in s.split()]
input()
将返回输入的字符串版本。split()
应用于此字符串,并使用空格作为分隔符。
使用int()
将split()
返回的列表中的每个元素转换为整数。
编辑:
要在EOF之前接受输入,您可以这样做
import sys
s=sys.stdin.read()
if(s[-1]=='\n'):
s=s[:-1]
s=[int(x) for x in s.split()]
https://stackoverflow.com/questions/50787125
复制相似问题