在一行中输入用逗号分隔的两个变量

4 投票
6 回答
21414 浏览
提问于 2025-04-16 23:14

有没有办法在一行里输入两个数字,比如 intfloat,用逗号隔开呢?

比如程序运行后会提示用户 输入一个范围:,然后用户输入 2,3。这样变量 range 就是 [2,3]。我知道的只有 range_choice.split() 是实现这个功能的唯一方法。

6 个回答

0

我了解到,ast.literal_eval 是安全的:

>>> x, y = ast.literal_eval(raw_input('Enter a range: '))
Enter a range: 5, 6
>>> x, y
(5, 6)
0
     x,y = input("Enter range: ")

如果你想把它们当作数字来用,最好不要使用raw_input。

4
num1,num2 = map(float, raw_input('Enter a range: ').split(','))

另外,如果你想在第二个值中允许使用逗号,可以使用partition,而不是split

s1,_,s2 = raw_input('Enter a range: ').partition(',')

在这种情况下,你需要自己把这两个字符串转换成数字。

撰写回答