python中for i in range(0, 3.0 , 0.1)为什么错?如果想要输出公差为0.1的等差数列呢?
来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/23 12:08:50
python中for i in range(0, 3.0 , 0.1)为什么错?如果想要输出公差为0.1的等差数列呢?
python中for i in range(0, 3.0 , 0.1)为什么错?
如果想要输出公差为0.1的等差数列呢?
python中for i in range(0, 3.0 , 0.1)为什么错?如果想要输出公差为0.1的等差数列呢?
python中的浮点数range方法
我们知道python中有个range函数用来产生一个范围内的数字数组,但是浮点数没有,我们来定义一个
#python中的range函数支持步进,如下:
>>> print range(2,15,3)
[2, 5, 8, 11, 14]
#但是浮点数不支持range函数,自己定义一个类似的
def floatrange(start,stop,steps):
''' Computes a range of floating value.
Input:
start (float) : Start value.
end (float) : End value
steps (integer): Number of values
Output:
A list of floats
Example:
>>> print floatrange(0.25, 1.3, 5)
[0.25, 0.51249999999999996, 0.77500000000000002, 1.0375000000000001, 1.3]
'''
return [start+float(i)*(stop-start)/(float(steps)-1) for i in range(steps)]
#运行范例:
>>> print floatrange(0.25, 1.3, 5)
[0.25, 0.51249999999999996, 0.77500000000000002, 1.0375000000000001, 1.3]