零基础Python教程-详说list有序集合

list是一种有序的集合,可以随时添加和删除其中的元素。

比如,列出你周围同事的名字,就可以用一个list表示:

>>> classmates = [‘Michael‘, ‘Bob‘, ‘Tracy‘]

>>> classmates
[‘Michael‘, ‘Bob‘, ‘Tracy‘]

变量classmates就是一个list。用len()函数可以获得list元素的个数:

>>> len(classmates)

3

用索引来访问list中每一个位置的元素,记得索引是从0开始的:

>>> classmates[0]

‘Michael‘

>>> classmates[1]

‘Bob‘

>>> classmates[2]

‘Tracy‘

>>> classmates[3]

Traceback (most recent call last):

File "<stdin>", line 1, in <module>

IndexError: list index out of range

当索引超出了范围时,Python会报一个IndexError错误,所以,要确保索引不要越界,记得最后一个元素的索引是len(classmates) - 1。

如果要取最后一个元素,除了计算索引位置外,还可以用-1做索引,直接获取最后一个元素:

>>> classmates[-1]

‘Tracy‘

以此类推,可以获取倒数第2个、倒数第3个:

>>> classmates[-2]

‘Bob‘

>>> classmates[-3]

‘Michael‘

>>> classmates[-4]

Traceback (most recent call last):

File "<stdin>", line 1, in <module>

IndexError: list index out of range

当然,倒数第4个就越界了。

list是一个可变的有序表,所以,可以往list中追加元素到末尾:

>>> classmates.append(‘Adam‘)

>>> classmates

[‘Michael‘, ‘Bob‘, ‘Tracy‘, ‘Adam‘]

也可以把元素插入到指定的位置,比如索引号为1的位置:

>>> classmates.insert(1, ‘Jack‘)

>>> classmates

[‘Michael‘, ‘Jack‘, ‘Bob‘, ‘Tracy‘, ‘Adam‘]

要删除list末尾的元素,用pop()方法:

>>> classmates.pop()

‘Adam‘

>>> classmates

[‘Michael‘, ‘Jack‘, ‘Bob‘, ‘Tracy‘]

要删除指定位置的元素,用pop(i)方法,其中i是索引位置:

>>> classmates.pop(1)

‘Jack‘

>>> classmates

[‘Michael‘, ‘Bob‘, ‘Tracy‘]

要把某个元素替换成别的元素,可以直接赋值给对应的索引位置:

>>> classmates[1] = ‘Sarah‘

>>> classmates

[‘Michael‘, ‘Sarah‘, ‘Tracy‘]

list里面的元素的数据类型也可以不同,比如:

>>> L = [‘Apple‘, 123, True]

list元素也可以是另一个list,比如:

>>> s = [‘python‘, ‘java‘, [‘asp‘, ‘php‘], ‘scheme‘]

>>> len(s)

4

要注意s只有4个元素,其中s[2]又是一个list,如果拆开写就更容易理解了:

>>> p = [‘asp‘, ‘php‘]

>>> s = [‘python‘, ‘java‘, p, ‘scheme‘]

要拿到‘php‘可以写p[1]或者s[2][1],因此s可以看成是一个二维数组,类似的还有三维、四维……数组,不过很少用到。

如果一个list中一个元素也没有,就是一个空的list,它的长度为0:

>>> L = []

>>> len(L)

0

免责声明:内容和图片源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

好啦,今天的分享到这就结束了,如果需要更多的技术性文章,可以直接访问马哥教育官网欧!

原文地址:https://www.cnblogs.com/woshijiuke/p/12053590.html

时间: 2024-10-10 14:30:09

零基础Python教程-详说list有序集合的相关文章

零基础python教程-用Python设计你的第一个小游戏

学以致用,既然学习了python就要让它来实现我们想做的东西,这次咱就用python来做个简单小游戏,在实践中不断成长. 1.游戏代码: 输入数字,来猜测原作者心中所想的数字,猜中夸你,猜不中不夸你,游戏结束. 建议上面的代码,手工打一次,你会发现那些单词并没有看到的那么容易看.以下为翻译代码 2.tab缩进 tab有两种功能,一种是缩进(也可用空格来表示,tab在不同的编辑器里面可能是2个空格,4个空格或是8,要留意这个问题.),如上述代码中4,6行代码为缩进,来表明属于一个模块.另一种是在i

嵩天老师的零基础Python笔记:https://www.bilibili.com/video/av15123607/?from=search&amp;seid=10211084839195730432#page=25 中的38-41讲

# -*- coding: utf-8 -*-#嵩天老师的零基础Python笔记:https://www.bilibili.com/video/av15123607/?from=search&seid=10211084839195730432#page=25 中的38-41讲# 文件# 文件是存储在外部介质上的数据或信息的集合# 文件是有序的数据序列# 常用的编码# ASCII码是标准化字符集# 7个二进制位编码# 表示128个字符 # ord() 将字符转化为ASCII码, chr() 将AS

嵩天老师的零基础Python笔记:https://www.bilibili.com/video/av13570243/?from=search&amp;seid=15873837810484552531 中的15-22讲

#coding=gbk#嵩天老师的零基础Python笔记:https://www.bilibili.com/video/av13570243/?from=search&seid=15873837810484552531 中的15-22讲#数字类型的关系#三种类型存在一种逐渐扩展的关系:#整数 ->浮点数 ->复数(整数是浮点数的特殊,浮点数是复数的特殊)#不同数字类型之间可以进行混合运算,运算后生成的结果为最宽类型.如整数+浮点数=浮点数#三种类型可以相互转换#函数:int(), fl

photoshop零基础入门教程——办公资源网

Ps是经常用到的办公工具,各行各业都会接触,可是使用Ps时各种各样的麻烦事也是让人头疼得不行,下面为大家准备了ps零基础入门教程分享,快来看看~ 本教程由Photoshop研发人员徐言武老师亲身教授,每一个工具的使用,每一张图的编辑都一步一步慢慢讲解.课程从Photoshop CC的安装讲起,再到工具栏的功能介绍,和实际应用操作,可以说为每一位学员扫清了学习过程中能碰到的所有问题.总之,这是一套入门级课程,可以帮助你打下坚实的基础.课程优势:http://www.bangongziyuan.co

零基础Python学习路线,小白的进阶之路!

近几年Python的受欢迎程度可谓是扶摇直上,当然了学习的人也是愈来愈多.一些学习Python的小白在学习初期,总希望能够得到一份Python学习路线图,小编经过多方汇总为大家汇总了一份Python学习路线图.对于一个零基础的想学习python的朋友来说,学习方法很重要, 学习方法不对努力白费 一定要有一个正确的学习线路与方法零基础Python学习路线,小白的进阶之路!零基础Python学习路线,小白的进阶之路!必学知识:[Linux基础][Python基础语法][Python字符串][文件操作

node.js零基础详细教程(5):express 、 路由

第五章 建议学习时间4小时  课程共10章 学习方式:详细阅读,并手动实现相关代码 学习目标:此教程将教会大家 安装Node.搭建服务器.express.mysql.mongodb.编写后台业务逻辑.编写接口,最后完成一个完整的项目后台,预计共10天课程. express Express 是一个基于 Node.js 平台的极简.灵活的 web 应用开发框架,它提供一系列强大的特性,帮助你创建各种 Web 和移动设备应用. 其实可以简单的将express理解为node.js的一个类库:我们在使用j

nodejs零基础详细教程1:安装+基础概念

第一章 建议学习时间2小时  课程共10章 学习方式:详细阅读,并手动实现相关代码 学习目标:此教程将教会大家 安装Node.搭建服务器.express.mysql.mongodb.编写后台业务逻辑.编写接口,最后完成一个完整的项目后台,预计共10天课程. 每日更新,建议跟学,按照本教程学习一定可以学好Nodejs,中途发现教程有误的地方,请及时留言反馈 node.js安装 通过官网下载 node.js 中文网下载地址 http://nodejs.cn/download/ windows系统我们

node.js零基础详细教程(7):node.js操作mongodb,及操作方法的封装

第七章 建议学习时间4小时  课程共10章 学习方式:详细阅读,并手动实现相关代码 学习目标:此教程将教会大家 安装Node.搭建服务器.express.mysql.mongodb.编写后台业务逻辑.编写接口,最后完成一个完整的项目后台,预计共10天课程. node.js操作mangodb 创建一个用于放置今天文件的文件夹,npm init初始化一下,并创建demo1.js用于写node代码 使用 npm install mongodb,将mongodb控制模块安装到本地 在demo1.js中写

零基础Linux教程第四课“SSH密匙登录Linux,WinSCP教程,修改Linux用户密码”

Linux SSH登录方式 使用密码登录 这种方式最为原始,也是常见的SSH登录Linux的验证方法,但其安全性不高.如果你的Linux系统设置的登录密码简单,黑客们就可以利用扫描加字典的破译方式获取你的密码,因此,为了Linux系统的安全性,我推荐使用第二种方式登录Linux 使用密匙登录 用密钥的验证方式,需要自己创建一对私钥,并把共有的共钥放远程Linux主机上.当需要连接到远程Linux主机时,客户端软件就会向远程Linux主机发送请求,请求使用私钥进行验证.远程Linux主机收到请求之