在一行中输入由逗号分隔的2个变量

时间:2011-08-09 20:39:26

标签: python

是否可以在一行中输入由逗号分隔的2个数字intfloat

在程序运行后说它会询问用户Enter a range:然后用户输入2,3。所以变量范围是[2,3]。据我所知range_choice.split()是唯一的方法。

6 个答案:

答案 0 :(得分:2)

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

或者,如果您想在第二个值中允许使用逗号,请使用partition代替split

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

在这种情况下,您必须自己将两个字符串转换为数字。

答案 1 :(得分:0)

num1,num2 = raw_input('输入范围:')。split(',')

答案 2 :(得分:0)

     x,y = input("Enter range: ")

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

答案 3 :(得分:0)

我的理解是ast.literal_eval是安全的:

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

答案 4 :(得分:0)

在python3中,您可以直接使用input()方法代替raw_input()

var1,var2 = input().split(',')

答案 5 :(得分:0)

您可以使用:

对于整数

a,b = map(int,input().split(','))

a,b = [int(i) for i in input().split(',')]

用于浮动

a,b = map(float,input().split(','))

语法:

var1 sep var2 sep ... sep varn = map(type, input().split('sep'))

var1 sep var2 sep ... sep varn = [type(var) for var in input().split('sep')]

用于字符串

a, b = input().split(',')