python np.arange 步长0.1的问题需要特别注意
作者:h_372101
这篇文章主要介绍了python np.arange 步长0.1的问题需要特别注意,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
np.arange 步长0.1问题
两个小测试:
1)count输出什么?
import numpy as np y_min= 20 y_max= 21 step = 0.1 count = 0 for i in np.arange(y_min, y_max, step): count += 1 print('i:', count, i)
答案是:count = 10
如图
2)count输出是什么?
import numpy as np y_min= 20 y_max= 21.1 step = 0.1 count = 0 for i in np.arange(y_min, y_max, step): count += 1 print('i:', count, i)
答案是:count = 12
如图
结论:python 的np.arange的步长默认是整数,对应范围是前闭后开[start, end),但是,步长是小数时,就不适用了,很容易出错,需要注意。
python步长的使用
我们在python中,有时候是需要间断取数或者其他情况时,这时就需要用到步长了,如下:
name=["a","b","c","d","e","f","g"]
这是一个列表,那如果需要取出列表中的数,但是又是间断取指定数时,此时可以用到步长,如图:
在python中,像print(name[1:4])这叫“切片,记住切片取数时是取头不取尾的,所以实际取的数分别是下标为1/2/3的数了”,那几个特殊的切片:
print(name[1:])
#表示取到最后一个数print(name[1:-1])
#表示取到倒数第二个数,且包含倒数第二个数
下图介绍了两种切片方法:从左往右和从右往左
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。