Python中的range函数和arange函数的区别与联系
【问题发现】
相信很多使用Python的小伙伴,都用到过range()函数,进行循环或遍历。
for i in range(len(a)):print(a[i])
但当我们用得正嗨时,可能突然看到其他作者的代码中用的并不是range()函数,而是arange()函数,就有些困惑,是不是代码写错了?自己写代码时,该用哪个更好,逼格更高呢?
其实两者功能十分相似,仅存在一点点区别。为了让大家更清楚地记住和区分它们,接下来将主要介绍它们的各自特点。
【问题解析】
1.range()函数和arange()函数最大的区别
前者是Python内置的函数,直接调用即可;后者是numpy中的函数,调用时一般采用np.arange()。
import numpy as np for i in np.arange(10):print(i)
2.range()函数仅支持整数步长
我们知道,range()函数具有3个参数,分别是起点、终点和步长。需要注意的是这3个参数均为整数型,不能设置为浮点型,这也导致了range()函数的返回值同样都是整数型的。
# range()函数的三种使用方法# 1.仅设置终点参数,默认起点为0,步长为1,返回值范围为[起点,终点)
>>>range(10)
0,1,2,3,4,5,6,7,8,9# 2.设置起点和终点,步长默认为1,返回值范围为[起点,终点)
>>>range(2,10)
2,3,4,5,6,7,8,9# 3.设置起点、终点和步长
>>>range(1,10,2)
1,3,5,7,9# 当设置起点、终点或步长为小数时,将会报错
>>>range(1,10,2.1)
TypeError: 'float' object cannot be interpreted as an integer
3.np.arange()函数支持小数步长
当然,在项目开过程中难免会遇到需要小数迭代序列,这时就需要np.arange()函数发挥它的作用了!首先,需要明确range()函数对整数参数的使用,np.arange()函数都能替代。
# np.arange()函数的整数型参数设置# 1.仅设置终点参数,默认起点为0,步长为1,返回值范围为[起点,终点)
>>>np.arange(10)
0,1,2,3,4,5,6,7,8,9# 2.设置起点和终点,步长默认为1,返回值范围为[起点,终点)
>>>np.arange(2,10)
2,3,4,5,6,7,8,9# 3.设置起点、终点和步长
>>>np.arange(1,10,2)
1,3,5,7,9
其次,np.arange()函数的3个参数均可设置为小数,可以最大自由化我们的需求。
# np.arange()函数的整数型参数设置# 1.终点为小数,默认起点为0.0,步长为1.0
>>>np.arange(10.2)
0.0,1.0,2.0,3.0,4.0,5.0,6.0,7.0,8.0,9.0# 2.设置起点和终点均为小数,步长默认为1.0,返回值范围为[起点,终点)
>>>np.arange(2.1, 5.1)
2.1,3.1,4.1# 3.设置起点、终点和步长均为小数
>>>np.arange(1.1, 5.2, 1.1)
1.1,2.2,3.3,4.4
4. 两者数据类型不同
range()函数返回的类型为range对象,np.arange()函数返回的类型为array类型对象。作者认为该区别影响不大,不做过多赘述。
Python中的range函数和arange函数的区别与联系相关推荐
- [小笔记]TypeScript/JavaScript模拟Python中的Range函数
[小笔记]TypeScript/JavaScript 模拟Python中的Range函数 李俊才/CSDN博客 CSDN用户名:jcLee95 邮箱:291148484@163.com 原创不易,感谢 ...
- Python中的range函数
大家好,我是翔宇!今天我们聊聊Python中很重要的range对象!(本文章基于Python3环境,Python2环境下的range会有所不同,但并不影响我们使) range对象 1.range对象是 ...
- python中的map,feilter,和reduce函数
python中的map,feilter,和reduce函数 map() map()的原型是map(function, iterable, -) 参数 function: 传的是一个函数名,可以是pyt ...
- python列表去重函数_对python中两种列表元素去重函数性能的比较方法
测试函数: 第一种:list的set函数 第二种:{}.fromkeys().keys() 测试代码: #!/usr/bin/python #-*- coding:utf-8 -*- import t ...
- python中rand函数是什么意思_科学网-Python中*和**作用及随机数产生函数 np.random.rand()/numpy.random.unifo...-张伟的博文...
[第一部分] Python中的 * 和 ** ,能够让函数支持任意数量的参数,它们在函数定义和调用中,有着不同的目的! 一. 打包参数 * 的作用:在函数定义中,收集所有位置参数到一个新的元组,并将整 ...
- python关键字define_在Python中,使用关键字define定义函数。
在Python中,使用关键字define定义函数. 以下属于生药学有效性评价的是A:有效成分定量分析B:限量检查C:重金属检测D:基原鉴定 若有如下定义和语句:A:7B:12C:8D:9 图示电路中的 ...
- 从Python中的另一个文件调用函数
本文翻译自:Call a function from another file in Python Set_up: I have a .py file for each function I need ...
- python命名规则数字开头的成语_浅谈Python中带_的变量或函数命名
搜索热词 Python 的代码风格由 PEP 8 描述.这个文档描述了 Python 编程风格的方方面面.在遵守这个文档的条件下,不同程序员编写的 Python 代码可以保持最大程度的相似风格.这样就 ...
- Python中求最大值和最小值max()函数、min()函数
[小白从小学Python.C.Java] [Python全国计算机等级考试] [Python数据分析考试必会题] ● 标题与摘要 Python中求最大值和最小值 max()函数.min()函数 ● 选 ...
最新文章
- python异常处理--try except else raise finally
- ASP 三十条精华代码
- Pat甲级 1002 A+B for Polynomials
- OpenCV的k - means聚类 -对图片进行颜色量化
- MySQL5.6 yum安装
- Java多线程-程序运行堆栈分析
- 【CRMEB知识付费系统v1.4.4】
- element ui table组件扩展关于列表编辑按钮的位置放置
- Adobe Edge Animate 1.0-软件内部教程
- python安卓下载-python手册中文版apk下载
- [转载] Python Pandas 转换unix时间戳
- kvm虚拟机vnc和spice配置
- 调用阿里语音合成接口(文字转语音)
- 完美国际坐标查看器(可更新)
- Word文档的使用技巧
- Python案例1—人民币与美元的汇率兑换V_3.0
- xcode13 swift语言 ios开发 快捷代码优化方式(代码重构)例子
- 软件测试——逻辑覆盖
- 中国高科技、高成长50强
- 手机浏览器APP哪几个值得推荐?为什么?