等效于python中的java.util.Scanner

时间:2019-02-17 12:43:50

标签: python python-3.x input

在Java中,人们可以这样写:

Scanner scan = new Scanner(System.in);
x = scan.nextInt();
y = scan.nextDouble();

Python 3中的等效功能是什么?输入是用空格分隔的整数的列表,我不想使用strip()方法。

2 个答案:

答案 0 :(得分:1)

使用input()方法:

x = int(input())
y = float(input())

如果要获取以空格分隔的整数的列表,并将其分开存储:

`input: 1 2 3 4`
ints = [int(x) for x in input().split()]
print(ints)
[1, 2, 3, 4]

答案 1 :(得分:1)

使用“输入”功能获取输入后,您可以执行以下操作:

my_input = input("Enter your input:") 
# my_input = "1, 2" 
def generate_inputs(my_input):
     yield from (i for i in my_input.split())

inputs = generate_inputs(my_input)
x = int(next(inputs))
y = int(next(inputs)) # you could also cast to float if you want 

如果您想要更少的代码:

scan = (int(i) for i in input().split())
x = next(scan)
y = next(scan)