📜  如何在Python的一行中输入来自用户的多个值?

📅  最后修改于: 2022-05-13 01:55:14.053000             🧑  作者: Mango

如何在Python的一行中输入来自用户的多个值?

例如,在 C 语言中,我们可以这样做:

// Reads two values in one line
scanf("%d %d", &x, &y) 

一种解决方案是使用 raw_input() 两次。

x, y = input(),  input()

另一种解决方案是使用 split()

x, y = input().split()

请注意,我们不必显式指定 split(' '),因为 split() 默认使用任何空白字符作为分隔符。

在上面的Python代码中要注意的一件事是, x 和 y 都是字符串。我们可以使用另一行将它们转换为 int

x, y = [int(x), int(y)]

# We can also use  list comprehension
x, y = [int(x) for x in [x, y]]

下面是完整的一行代码,用于使用拆分和列表理解从标准输入中读取两个整数变量

# Reads two numbers from input and typecasts them to int using 
# list comprehension
x, y = [int(x) for x in input().split()]  
# Reads two numbers from input and typecasts them to int using 
# map function
x, y = map(int, input().split())