为了读取语言C中的多个变量,我们编写类似-//Read three variable in one line
scanf(“%d %d %d”, &x, &y, &z)
目前python没有等效于scanf()。但是,python提供了比scanf()格式字符串更强大和更详细的正则表达式。在Python中,要从用户提供多个值,我们可以使用-
input()方法:用户可以在一行中输入多个值,例如->>> x, y, z = input(), input(), input()40
30
10
>>> x
'40'
>>> y
'30'
>>> z
'10'
从上面的输出中,您可以看到,我们能够在一行中为三个变量提供值。
为了避免使用多种input()方法(取决于我们传递多少个值),我们可以使用列表推导或map()函数。
使用列表推导传递多个值>>> x,y,z = [int(x) for x in input().split()]
9 12 15
>>> x
9
>>> y
12
>>> z
15
在上面的代码行中,我将输入值类型转换为整数。如果您不希望&输入为混合类型,则只需键入->>> x,y,z = [x for x in input().split()]
40 10 "hello"
使用映射功能
从用户传递多个值的另一种方法是使用映射函数。>>> x,y,z = map(int, input().split())
40 54 90
>>> x
40
>>> y
54
>>> z
90