Python3中对range()逆序的解释
作者:yuping_zhu 发布时间:2023-03-26 10:27:59
标签:Python3,range,逆序
对range()逆序的解释
在 Python3.6 中,range() 函数返回一个可迭代的范围对象,范围类型表示不可变的数字序列,一般用在 for 循环中。
range() 的返回值不是列表,是需要通过转换类型才能变成列表。
Python 3.6.0 (v3.6.0:41df79263a11, Dec 23 2016, 08:06:12) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> range(4)
range(0, 4)
>>> a = range(4)
>>> type(a)
<class 'range'>
>>> b = list(range(4))
>>> b
[0, 1, 2, 3]
>>> type(b)
<class 'list'>
使用方式: range(start, stop[, step]):
start
: 计数从 start 开始。默认是从 0 开始。range(4) 相当于 range(0,4)stop
: 计数到 stop 结束,不包括 stop。range(0,4) 转成 list 后表示 [0, 1, 2, 3]step
:步长,默认为1。range(0,3) 相当于 range(0, 3, 1)
range函数逆序有两种实现方式
1.先创建一个可迭代对象,后对其中的元素进行逆序操作。
a = range(6) # list(a): [0, 1, 2, 3, 4, 5]
new = []
for i in reversed(a):
new.append(i)
print(new) # [5, 4, 3, 2, 1, 0]
2.利用range()函数特点来进行逆序。
new =[]
for i in range(5, -1, -1):
new.append(i)
print(new) # [5, 4, 3, 2, 1, 0]
range(a,b),函数"包前不包后",只包含a,不包含b,默认步长为1。
来看一个比较难的问题
删除某个list里面的重复元素,用sort进行排序,要求从列表list的最后一个元素开始判断
a=[1,2,4,2,4,5,7,10,5,5,7,8,9,0,3]
a=[1,2,4,2,4,5,7,10,5,5,7,8,9,0,3]
a.sort()
last=a[-1]
for i in range(len(a)-2,-1,-1):
if last==a[i]:
del a[i]
else:
last=a[i]
print(a) # [0, 1, 2, 3, 4, 5, 7, 8, 9, 10]
解释:
a = [1, 2, 4, 2, 4, 5, 7, 10, 5, 5, 7, 8, 9, 0, 3] # length : 15
a.sort()
print(a) # [0, 1, 2, 2, 3, 4, 4, 5, 5, 5, 7, 7, 8, 9, 10]
last = a[-1]
print(last) # 最后一个元素是last,最开始时为10
# 从index=13(倒数第2个)(包含)开始,倒着数,到 index=-1 (不含)
# 或者说:从下标index=13(含),到index=-1(不含)相当于到index=0(含)
for i in range(len(a)-2, -1, -1):
if last == a[i]: # 将最后一个元素 分别与 其他元素比较大小
del a[i] # 相同就删掉
else:
last = a[i] # 不同就把当前元素赋值传给last
print(a)
range的逆序输出
range的逆序输出的两种方式:
1.使用range里的步长参数 step,step为负值即代表反向输出
range(begin, end, step)
range(begin, end, -1) 表示逆序,范围为: [begin, end)
例子如下:
# range(begin, end, 方向) 范围为: [begin, end) 即 [3, 2, 1]
for i in range(3, 0, -1):
print(i)
print('\n')
# 范围为 [3, 2, 1, 0]
for i in range(3, -1, -1):
print(i)
#========== 结果 ==========#
3
2
1
3
2
1
0
2.使用reverse直接逆序输出
for i in reversed(range(10)):
print(i)
"""
输出结果:
9
8
7
6
5
4
3
2
1
0
"""
来源:https://blog.csdn.net/qq_31362767/article/details/81702491
0
投稿
猜你喜欢
- 如何做一个文本书写器?我们有下面的的函数,可做“文本书写器”:<%function WriteToFile(FileName
- 大量的多行段落本身就会降低可读性,同时空行分段也比空格分段有更高的可适应性...前文讨论的热烈程度远超我预期,正好还有之前查阅资料拍的几张实
- 引言Python中的并发编程允许你同时执行多个任务,提高程序的运行效率。在本文中,我们将介绍Python中的asyncio库,它是一个基于异
- dictionary对象和数组有点相似,但无需用redim来改变dictionary的大小,dictionary也没有多维,dictiona
- 本文实例为大家分享了python环境路径设置方法,以及命令行运行python脚本,供大家参考,具体内容如下找Python安装目录,设置环境路
- 一、日志级别1. 级别定义logging模块提供了5种日志级别,分别为:CRITICAL>ERROR>WARNING>IN
- Web开发中,我们经常会遇到分页显示和排序数据记录集的情况,这在服务器端使用服务器端的代码和数据库技术是件很轻松的事情,比如:ASP、PHP
- Pytorch把Tensor转化成图像可视化在调试程序的时候经常想把tensor可视化成来看看,可以这样操作:from torchvisio
- XML(可扩展标记语言)已成为Web应用中数据表示和数据交换的标准,随着Internet的快速发展,尤其是电子商务,Web服务等应用的广泛使
- 前言项目中要实现多选,就想到用插件,选择了bootstrap-select。附上官网api链接,http://silviomoreto.gi
- 1、某汽车网站地址2、使用firefox查看后发现,此网站的信息未使用json数据,而是简单那的html页面而已3、使用pyquery库中的
- 顽固的Select下拉列表,一般很难用css来控制样式下面使用了js来美化select<!DOCTYPE html PUBLIC &q
- 前言无聊的时候做了一个搜索文章的软件,有没有更加的方便快捷不知道,好玩就行了环境使用Python 3.8Pycharm模块使用import
- 析构函数:当某个对象成为垃圾或者当对象被显式销毁时执行。GC(Garbage Collector) 在PHP中,没有任何变量指向这个对象时,
- import random, stringclass C(object): passdef danger
- PDOStatement::fetchObjectPDOStatement::fetchObject — 获取下一行并作为一个对象返回。(P
- 下面是滚动条css代码参数介绍:scrollbar-3d-light-color 设置或检索滚动条亮边框颜色 scrollbar-highl
- 本文实例为大家分享了JavaScript实现多层颜色选项卡嵌套的具体代码,供大家参考,具体内容如下这是学JavaScript时候的一个作业,
- 1、创建存储过程 create or replace procedure test(var_name_1 in type,var_name_
- 有一组4096长度的数据,需要找到一阶导数从正到负的点,和三阶导数从负到正的点,截取了一小段。394.0 388.0 389.0 388.0