对Python中range()函数和list的比较

yipeiwu_com6年前Python基础

使用Python的人都知道range()函数和list很方便,今天再用到他的时候发现了很多以前看到过但是忘记的细节。这里记录一下range()和list。

>>> range(1,5) #代表从1到5(不包含5) 
[1, 2, 3, 4] 
>>> range(1,5,2) #代表从1到5,间隔2(不包含5) 
[1, 3] 
>>> range(5)  #代表从0到5(不包含5) 
[0, 1, 2, 3, 4] 

再看看list的操作:

array = [1, 2, 5, 3, 6, 8, 4] 
#其实这里的顺序标识是 
[1, 2, 5, 3, 6, 8, 4] 
(0,1,2,3,4,5,6) 
(-7,-6,-5,-4,-3,-2,-1) 
 
>>> array[0:] #列出0以后的 
[1, 2, 5, 3, 6, 8, 4] 
>>> array[1:] #列出1以后的 
[2, 5, 3, 6, 8, 4] 
>>> array[:-1] #列出-1之前的 
[1, 2, 5, 3, 6, 8] 
>>> array[3:-3] #列出3到-3之间的 
[3]
#那么两个[::]会是什么那?
>>> array[::2] 
[1, 5, 6, 4] 
>>> array[2::] 
[5, 3, 6, 8, 4] 
>>> array[::3] 
[1, 3, 4] 
>>> array[::4] 
[1, 6] 
#如果想让他们颠倒形成reverse函数的效果 
>>> array[::-1] 
[4, 8, 6, 3, 5, 2, 1] 
>>> array[::-2] 
[4, 6, 5, 1] 

以上这篇对Python中range()函数和list的比较就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Django CSRF跨站请求伪造防护过程解析

前言 CSRF全称Cross-site request forgery(跨站请求伪造),是一种网络的攻击方式,也被称为“One Click Attack”或者Session Riding...

浅谈Python 对象内存占用

一切皆是对象 在 Python 一切皆是对象,包括所有类型的常量与变量,整型,布尔型,甚至函数。 参见stackoverflow上的一个问题 Is everything an objec...

对pandas的层次索引与取值的新方法详解

对pandas的层次索引与取值的新方法详解

1、层次索引 1.1 定义 在某一个方向拥有多个(两个及两个以上)索引级别,就叫做层次索引。 通过层次化索引,pandas能够以较低维度形式处理高纬度的数据 通过层次化索引,可以按照层次...

python多进程中的内存复制(实例讲解)

python多进程中的内存复制(实例讲解)

比较好奇python对于多进程中copy on write机制的实际使用情况。目前从实验结果来看,python 使用multiprocessing来创建多进程时,无论数据是否不会被更改,...

Python实现数值积分方式

Python实现数值积分方式

原理: 利用复化梯形公式,复化Simpson公式,计算积分。 步骤: import math """测试函数""" def f(x,i): if i == 1: re...