开发人员通常希望用户在一行中输入多个值或输入。在 C++/C 中,用户可以使用 scanf 在一行中获取多个输入,但在 Python 中,用户可以通过两种方法在一行中获取多个值或输入。
使用split()方法: 此函数有助于从用户那里获取多个输入。它通过指定的分隔符打破给定的输入。如果未提供分隔符,则任何空格都是分隔符。通常,用户使用 split() 方法来拆分 Python 字符串,但也可以使用它来获取多个输入。
句法 :
input().split(separator, maxsplit)
例子 :
# Python program showing how to # multiple input using split # taking two inputs at a time x, y = input("Enter two values: ").split() print("Number of boys: ", x) print("Number of girls: ", y) # taking three inputs at a time x, y, z = input("Enter three values: ").split() print("Total number of students: ", x) print("Number of boys is : ", y) print("Number of girls is : ", z) # taking two inputs at a time a, b = input("Enter two values: ").split() print("First number is {} and second number is {}".format(a, b)) # taking multiple inputs at a time # and type casting using list() function x = list(map(int, input("Enter multiple values: ").split())) print("List of students: ", x)
输出:
Enter two values: 5 10 Number of boys: 5 Number of girls: 10 Enter three values: 5 10 15 Total number of students: 5 Number of boys is : 10 Number of girls is : 15 Enter two values: 5 10 First number is 5 and second number is 10 Enter multiple values: 5 10 15 20 25 List of students: [5, 10, 15, 20, 25]
使用**列表理解**: 列表理解是一种在 Python 中定义和创建列表的优雅方式。我们可以只在一行中创建列表,就像数学语句一样。它还用于从用户获取多个输入。
例子:
# Python program showing # how to take multiple input # using List comprehension # taking two input at a time x, y = [int(x) for x in input("Enter two values: ").split()] print("First Number is: ", x) print("Second Number is: ", y) # taking three input at a time x, y, z = [int(x) for x in input("Enter three values: ").split()] print("First Number is: ", x) print("Second Number is: ", y) print("Third Number is: ", z) # taking two inputs at a time x, y = [int(x) for x in input("Enter two values: ").split()] print("First number is {} and second number is {}".format(x, y)) # taking multiple inputs at a time x = [int(x) for x in input("Enter multiple values: ").split()] print("Number of list is: ", x)
输出 :
Enter two values: 5 10 First Number is: 5 Second Number is: 10 Enter three values: 5 10 15 First Number is: 5 Second Number is: 10 Third Number is: 15 Enter two values: 5 10 First number is 5 and second number is 10 Enter multiple values: 5 10 15 20 25 Number of list is: [5, 10, 15, 20, 25]
注意:以上示例采用以空格分隔的输入。如果我们希望输入以逗号 (,) 分隔,我们可以使用以下内容:
# taking multiple inputs at a time separated by comma x = [int(x) for x in input("Enter multiple value: ").split(",")] print("Number of list is: ", x)
原文链接:codingdict.net