是否可以在一行中输入由逗号分隔的2个数字int
或float
?
在程序运行后说它会询问用户Enter a range:
然后用户输入2,3
。所以变量范围是[2,3]
。据我所知range_choice.split()
是唯一的方法。
答案 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(',')