t = range(10, 20, 1)
这将生成一个整数元素列表。
但我想生成一个float(double)元素列表,其值与
相同t = range(10.0, 20.0, 1.0)
这不起作用。
TypeError: range() integer end argument expected, got float.
答案 0 :(得分:6)
无法使用range
执行此操作。要解决此问题,您可以使用map
将值转换为float
,如下所示:
>>> map(float, range(10, 20, 1))
[10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0]
答案 1 :(得分:2)
您可以输入演员int
到float
。
>>> [float(x) for x in range(10,20,1)]
[10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0]
答案 2 :(得分:1)
[i*1.0 for i in range(10, 20, 1)]