iis服务器助手广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python3中对range()逆序的解释
  • 329
分享到

Python3中对range()逆序的解释

2024-04-02 19:04:59 329人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

目录对range()逆序的解释range函数逆序有两种实现方式来看一个比较难的问题range的逆序输出1.使用range里的步长参数 step,step为负值即代表反向输出2.使用r

对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
"""

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

--结束END--

本文标题: Python3中对range()逆序的解释

本文链接: https://www.lsjlt.com/news/118193.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python3中对range()逆序的解释
    目录对range()逆序的解释range函数逆序有两种实现方式来看一个比较难的问题range的逆序输出1.使用range里的步长参数 step,step为负值即代表反向输出2.使用r...
    99+
    2024-04-02
  • python3中range函数的变化
    Introduction 今天写代码需要生成一个整数构成的list,于是很自然地想到range函数。可以当我将生成的内容传入一个需要list参数的函数中,奇怪的事情发生了,竟然提示传入的不是一个list。于是上网寻求解决方法,并进...
    99+
    2023-01-31
    函数 range
  • 了解PHP中的rsort()函数对数组进行逆序排序
    了解PHP中的rsort()函数对数组进行逆序排序,需要具体代码示例PHP是一种非常流行的服务器端脚本语言,广泛应用于Web开发领域。在PHP中,有许多内置函数可以方便地处理数组。其中,rsort()函数可以对数组进行逆序排序。rsort(...
    99+
    2023-11-18
    PHP 逆序排序 rsort()
  • Python3 解释器的实现
    Linux/Unix的系统上,一般默认的 python 版本为 2.x,我们可以将 python3.x 安装在 /usr/local/python3 目录中。 安装完成后,我们可以将...
    99+
    2024-04-02
  • python中序列的逆序方式
    目录序列的逆序方式1. range 函数2. reversed 函数3. 其他方法一个字符串的逆序函数序列的逆序方式 1. range 函数 一般 for 循环中总会用到 range...
    99+
    2024-04-02
  • python中对%、~含义的解释
    目录%有哪几种含义?~含义是什么?按位取反运算符%有哪几种含义? 查找手册 翻看《The Python Libary Reference》python库指南中附录index部分(P1...
    99+
    2024-04-02
  • java中怎么对arrayList按数字大小逆序排序
    这篇文章主要介绍“java中怎么对arrayList按数字大小逆序排序”,在日常操作中,相信很多人在java中怎么对arrayList按数字大小逆序排序问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”java中...
    99+
    2023-07-06
  • python3装饰器的简单解释
    闭包,也叫词法闭包:如下所示函数A主要是为了函数B提供运行环境的 闭包只是在表现和形式上像函数,其实闭包并不是函数 由函数在嵌套环境中,内层函数里,对外层函数作用域的变量进行了引用,那么在外层函数返回后,内层函数依然可是使用外层函数的变量,...
    99+
    2023-01-31
    简单
  • java中如何对arrayList按数字大小逆序排序
    目录对arrayList按数字大小逆序排序arrayList实现自定义排序ArrayList排序使用原理分析总结对arrayList按数字大小逆序排序 对集合排序要用Collecti...
    99+
    2023-05-15
    java arrayList arrayList数字大小逆序排序 arrayList逆序排序
  • python中的range函数|python中的range函数|range()函数详解|Python中range(len())的用法
    本期目录 一、range()传递不同的参数1、传递一个参数时2、传递两个参数时3、传递三个参数时 二、使用 range() 构建 for 循环三、遍历列表时使用 range(len()) ...
    99+
    2023-09-29
    python 数据分析 numpy
  • 使用PHP中的arsort()函数对数组按值进行逆序排序
    标题:PHP中使用arsort()函数对数组按值进行逆序排序文章正文:在PHP中,数组是非常常用的数据结构。有时候我们需要对数组进行排序,特别是按值进行排序。PHP提供了一系列的排序函数来满足我们的需求,其中之一就是arsort()函数。a...
    99+
    2023-11-18
    PHP arsort() 逆序排序
  • 关于python中逆序的三位数
    目录python逆序的三位数思路Python三位数逆序输出基础方法1.利用切片操作2.利用for循环3.数学方法4.字符串的“索引”+“连接&rd...
    99+
    2024-04-02
  • python中逆序的三位数问题怎么解决
    这篇文章主要介绍“python中逆序的三位数问题怎么解决”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“python中逆序的三位数问题怎么解决”文章能帮助大家解决问题。python逆序的三位数程序每次...
    99+
    2023-06-30
  • C++中String类型的逆序方式
    目录C++String类型的逆序这里使用反向迭代器实现用String方法逆序输出字符串数组方法C++String类型的逆序 这里使用反向迭代器实现 #include<iostr...
    99+
    2024-04-02
  • 使用 JDBC 程序解释什么是 RowSet 对象
    在JDBC(Java Database Connectivity)中,RowSet是一个接口,用于表示数据库结果集的高级版本。它提供...
    99+
    2023-10-10
    JDBC
  • 使用 JDBC 程序解释什么是 RowSet 对象?
    RowSet 是 ResultSet 对象的包装器。它可以与数据库连接、断开并且可以序列化。它通过设置属性来维护 JavaBean 组件。您可以通过网络传递 RowSet 对象。默认情况下,RowSet 对象是可滚动和可更新的,它用于使 R...
    99+
    2023-10-22
  • 如何使用PHP中的krsort()函数按键名对数组进行逆序排序
    如何使用PHP中的krsort()函数按键名对数组进行逆序排序,需要具体代码示例PHP中的数组是一种非常有用的数据结构,它可以存储多个值,并根据键名进行访问和操作。在PHP中,我们可以使用krsort()函数对数组按照键名进行逆序排序。本文...
    99+
    2023-11-18
    PHP 逆序排序 krsort()
  • Java中逆序遍历List集合的实现
    目录1 问题2 方法3 结语1 问题 手写一个程序,完成List集合对象的逆序遍历 2 方法 创建List接口的多态对象 向创建好list集合添加元素 使用hasPreviou...
    99+
    2023-01-28
    Java 逆序遍历List Java 逆序遍历
  • 在Python3解释器的交互界面下使用方
    现象: 在python3的解释器交互界面使用方向键会产生类似: [d^[C之类的乱码.原因: 未使能readline功能解决办法:yum install -y readline-devel       //安装C的readline相关文件m...
    99+
    2023-01-31
    界面
  • 计算机中解释程序指的是什么
    这篇文章主要介绍计算机中解释程序指的是什么,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!解释程序是一种语言处理程序,在运行用户程序时,可以直接执行源程序或源程序的内部形式(中间代码)。解释程序的优点是:结构简单,易于...
    99+
    2023-06-14
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作