python 列表中[ ]中冒号‘:’的作用

yipeiwu_com5年前Python基础

中括号[ ]:用于定义列表或引用列表、数组、字符串及元组中元素位置

list1 = ['physics', 'chemistry', 1997, 2000]
list2 = [1, 2, 3, 4, 5, 6, 7 ]
print "list1[0]: ", list1[0]
print "list2[1:5]: ", list2[1:5]

冒号: 用于定义分片、步长。

a[ : n]表示从第0个元素到第n个元素(不包括n),a[1: ] 表示该列表中的第1个元素到最后一个元素。

list1[:3:2],tul1[3:6:2](注意3:6是索引第3至5,不包含6)

L[2] 读取列表中第三个元素,也即第2个元素

L[-2] 读取列表中倒数第二个元素

L[1:] 从第二个元素开始截取列表

list1 = [1,2,3,4,5]
print list1
print list1[:-1]

输出结果:

[1, 2, 3, 4, 5]
[1, 2, 3, 4]

python 创建二维列表

list_2d = [[0 for col in range(cols)] for row in range(rows)]

实例:

>>> list_2d = [ [0 for i in range(5)] for i in range(4)]
>>> list_2d[0].append(3)
>>> list_2d[0].append(5)
>>> list_2d[2].append(7)
>>> list_2d

结果为[[0, 0, 0, 0, 0, 3, 5], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 7], [0, 0, 0, 0, 0]]

列表里 a 与 a[:] 不同。

通过函数 id() 来查看:

a = [1, 2, 3]

id(a)

id(a[:])

会发现得到的两个值不同。

或者直接运行:

a is a[:]

返回值将是:False。

简单来说,a[:] 是创建 a 的一个副本,这样在代码中对 a[:] 进行操作,就不会改变 a 的值。而若直接对 a 进行操作,那么 a 的值会受到操作的影响,如 append() 等。

range() 函数可创建一个整数列表,一般用在 for 循环中。

函数语法

range(start, stop[, step])

参数说明:

start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);

stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5

step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)

倒序

>>> range(100,19,-5)
结果:[100, 95, 90, 85, 80, 75, 70, 65, 60, 55, 50, 45, 40, 35, 30, 25, 20]

xrange() 函数用法与 range 完全相同,所不同的是生成的不是一个数组,而是一个生成器

总结

以上所述是小编给大家介绍的python 列表中[ ]中冒号‘:'的作用,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

Python3.0中普通方法、类方法和静态方法的比较

一、语法区别 刚接触Python中的面向对象,对于类方法和静态方法难以区分,通过查找知乎、CSDN论坛,废了好大的劲思路才逐渐明朗,所以就总结顺便分享一下。 首先开始编辑代码 #...

python里对list中的整数求平均并排序

问题 定义一个int型的一维数组,包含40个元素,用来存储每个学员的成绩,循环产生40个0~100之间的随机整数, (1)将它们存储到一维数组中,然后统计成绩低于平均分的学员的人数,并输...

python 中pyqt5 树节点点击实现多窗口切换问题

python 中pyqt5 树节点点击实现多窗口切换问题

下面通过实例代码给大家介绍python 中pyqt5 树节点点击实现多窗口切换问题,具体代码如下所示: # coding=utf-8 import sys from PyQt5.Qt...

基于wxpython开发的简单gui计算器实例

本文实例讲述了基于wxpython开发的简单gui计算器。分享给大家供大家参考。具体如下: # wxCalc1 a simple GUI calculator using wxPyt...

Python实现从SQL型数据库读写dataframe型数据的方法【基于pandas】

本文实例讲述了Python实现从SQL型数据库读写dataframe型数据的方法。分享给大家供大家参考,具体如下: Python的pandas包对表格化的数据处理能力很强,而SQL数据库...