我想读两个输入值。第一个值应该是一个整数,第二个值应该是一个浮点数。
我看到Read two variables in a single line with Python,但仅当两个值都是相同类型时才适用。我还有其他办法吗?
示例输入,首先是int,第二个是float。输入应该在一行上:
20 150.50
http://www.codechef.com/problems/HS08TEST/
我是Python的新手。
答案 0 :(得分:21)
像这样:
In [20]: a,b = raw_input().split()
12 12.2
In [21]: a = int(a)
Out[21]: 12
In [22]: b = float(b)
Out[22]: 12.2
你不能用一个单行程(或者至少没有一些超级duper额外的hackz0r技能 - 或分号)这样做,但python不适用于单行。
答案 1 :(得分:4)
一个班轮:)
>>> [f(i) for f,i in zip((int, float), raw_input().split())]
1 1.2
[1, 1.2]
答案 2 :(得分:3)
更简单的一个班轮(但不太安全):
map(eval, raw_input().split())
答案 3 :(得分:1)
如果输入用空格分隔" "
a,b,c = raw_input().split(" ")
如果输入用逗号分隔,'
a,b,c = raw_input().split(",")
答案 4 :(得分:1)
下面的代码段对我有用。
class
答案 5 :(得分:0)
A,B = raw_input().split(" ")
A = int(A)
B = float(B)
print(A)
print(B)
34 6.9
34
6.9
答案 6 :(得分:0)
如果您希望输入尽可能多的输入,请执行以下操作:
x=list(map(str,input().split()))
print(x)
如果需要两个输入:
x,y=x,y=list(map(str,input().split()))
print(x,y)
答案 7 :(得分:0)
这是个不错的解决方案,a, b = input().split()
。
如果要用自定义字符分隔输入,可以将其放在括号中,例如a, b = input().split(",")
答案 8 :(得分:0)
读取3个以空格分隔的输入...
arr = input().split(" ")
A = float(arr[0])
B = float(arr[1])
C = float(arr[2])
print(A)
print(B)
print(C)
答案 9 :(得分:0)
以下代码段对我有用。
a, b = input().split(" ")
a_value = int(a)
b_value = int(b)
答案 10 :(得分:-1)
答案 11 :(得分:-2)
map(str,input().split())
就是这样做的。