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

📅  最后修改于: 2023-12-03 15:24:36.157000             🧑  作者: Mango

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

在Python中,输入来自用户的多个值通常需要使用分割符来分隔不同的值。这通常涉及到将多个输入值分割成一个列表,使用空格或逗号作为分隔符,然后将它们转换为需要的数据类型。在本文中,我们将介绍如何在Python的一行中完成这个任务。

使用input函数和split方法
a, b, c = input("Enter three values separated by spaces: ").split()

在这个例子中,我们使用input函数来提示用户输入三个值,并将它们用空格分隔。输入的字符串被split方法拆分成一个字符串列表,并分别赋值给变量a,b和c。如果用户输入的值的数量不是3个,那么程序将产生ValueError异常。

使用列表推导式
a, b, c = [int(x) for x in input("Enter three integers: ").split()]

在这个例子中,我们使用列表推导式来将输入的字符串列表转换为整数。如果用户输入的值无法转换为整数,那么程序将产生ValueError异常。

使用map函数
a, b, c = map(int, input("Enter three integers: ").split())

在这个例子中,我们使用map函数来将输入的字符串列表转换为整数。map函数返回一个迭代器,它将每个输入值传递给int函数,然后返回一个整数列表。如果用户输入的值无法转换为整数,那么程序将产生ValueError异常。

使用正则表达式
import re
a, b, c = map(int, re.findall('\d+', input("Enter three integers: ")))

在这个例子中,我们使用正则表达式来匹配输入字符串中的所有数字,并将它们转换为整数。如果用户输入的值无法转换为整数,那么程序将产生ValueError异常。

结论

使用以上任何一种方法,您都可以在Python的一行中输入来自用户的多个值。这可以使您的代码更简洁、更紧凑,并且可以提高效率。