第3.2节 Python列表简介
鉴于Python中列表(list)的强大功能,本节及后面至少有一节都是介绍列表相关的知识,本节先介绍基本的列表知识。
一、 列表的定义
列表是一种可以修改的序列,它有点类似于c语言中的数组,在Python中,列表用中括号来表示。
下列方式都是定义列表的方式
l1=[] # l1是空列表
l2=[1,2,3,4] #l2数字列表
l3=[1,2,3,‘a’,‘b’,‘c’] #l3数字和字母混合列表
l4=[‘Hello’,l2,l3] #l4是包含字符串和列表l2、l3作为元素的混合列表,对应的列表值为:[‘Hello’, [1, 2, 3, 4], [1, 2, 3, ‘a’, ‘b’, ‘c’]]
type(l4) #执行结果显示:<class ‘list’>从上面定义列表的样例可以看到,列表的元素类型没有要求,可以是任意数据类型,其元素甚至还可以是列表以及后面要介绍元组、集合等,不同元素可以是不同类型;
这种可以包含其他类型对象(如列表、元组、字典等)作为元素的对象,在 Python中称为容器(container);两种主要的容器是序列(如列表和元组)和映射(如字典)。在序列中,每个元素都有编号,而在映射中,每个元素都有名称(也叫键)。有一种既不是序列也不是映射的容器,它就是集合(set)。
二、 列表的操作方法
- 上节介绍的所有序列的操作方法都可以用于列表;
- 由于列表不同于字符串和元组,列表是一种可以修改的序列,所以列表的操作方法比上章介绍的要多,主要多出了如下内容:
- 通过索引修改元素的值,而这是字符串和元组无法进行的。如:
l = [‘张三’,‘19911008’,‘男’,‘本科’]
定义了一个存储张三基本信息的列表,可以通过l[3]=’研究生’,将该列表中的学历信息修改为‘研究生’; - 从列表中删除元素,只需使用del语句加列表元素位置即可,如删除性别可使用:del(l[2]) ,删除后l变为[‘张三’, ‘19911008’, ‘本科’];
- 方法insert用于将一个对象插入列表指定索引位置,如l.insert(2,‘男’),将上面删除性别的列表恢复了性别这个元素’;
- 方法pop从列表中删除一个元素(末尾为最后一个元素),并返回这一元素,不带参数就删除最后一个,带参数则删除指定位置的元素。pop是唯一既修改列表又返回一个非None值的列表方法。执行l.pop()就将列表中的学历“本科”删除并返回这个字符串;
- 方法extend可使用一个列表来扩展另一个列表,这可能看起来类似于拼接,但存在一个重要差别,那就是将修改被扩展的序列。在常规拼接中,情况是返回一个全新的序列,并没有改变参与拼接的列表的内容,实际上常规拼接是使用参与拼接的列表的副本叠加后创建一个新列表,而extend是将参数对应列表叠加到调用对象的末尾,因此如果使用l3= l1 + l2,拼接的效率将比l1.extend(l2)低.
- 方法remove通过找到列表中第一个与变量相同的元素,然后删除该元素且不返回值,这是与pop不同的地方。如:
n=[1,2,3,1,2,3]
b=n.remove(1) #删除后列表n变成了[2, 3, 1, 2, 3]。此地的1不是索引,是列表中的元素值,如果不用数字就更清晰 - 方法clear()删除列表的所有元素,列表变成空列表。
本节介绍了列表的基本概念及基本操作方法,下一节我们将继续介绍列表的一些复杂操作。
老猿Python系列文章用于逐步介绍老猿学习Python后总结的学习经验,这些经验有助于没有接触过Python的程序员可以很容易地进入Python的世界。该系列文章同步发表于:
http://blog.sina.com.cn/learnpython
http://laoyuanpython.lofter.com/
https://me.csdn.net/LaoYuanPython
欢迎大家批评指正,谢谢大家关注!
第3.2节 Python列表简介的更多相关文章
- Python列表简介和遍历
一.Python3列表简介 1.1.Python列表简介 序列是Python中最基本的数据结构 序列中的每个值都有对应的位置值,称之为索引,第一个索引是0,第二个索引是1,以此类推. Python有6 ...
- python列表简介
什么是列表?如何使用列表?https://docs.python.org/3/library/stdtypes.html#sequence-types-list-tuple-range 列表相关知识: ...
- Python编程从入门到实践笔记——列表简介
Python编程从入门到实践笔记——列表简介 #coding=utf-8 #列表——我的理解等于C语言和Java中的数组 bicycles = ["trek","cann ...
- python入门学习:2.列表简介
python入门学习:2.列表简介 关键点:列表 2.1 列表是什么2.2 修改.添加和删除元素2.3 组织列表 2.1 列表是什么 列表,是由一系列按特定顺序排列的元素组成.你可以创建包含字母表 ...
- 【Python编程:从入门到实践】chapter3 列表简介
chapter3 列表简介3.1 列表是什么 列表是一系列按特定顺序排列的元素组成. bicycle = ['trek','cannondale'] print bicycle 3.1.1 访问列表元 ...
- (转)python 列表与元组的操作简介
python 列表与元组的操作简介 原文:https://www.cnblogs.com/QG-whz/p/4782809.html 阅读目录 列表 list函数 列表的基本操作 列表方法 元组 tu ...
- Python成长笔记 - 基础篇 (三)python列表元组、字典、集合
本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 一.列表和元组的操作 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 定义 ...
- Python的简介以及安装和第一个程序以及用法
Python的简介: 1.Python是一种解释型.面向对象.动态数据类型的高级程序设计语言.自从20世纪90年代初Python语言诞生至今,它逐渐被广泛应用于处理系统管理任务和Web编程.Pytho ...
- [Python] heapq简介
[Python] heapq简介 « Lonely Coder [Python] heapq简介 judezhan 发布于 2012 年 8 月 8 日 暂无评论 发表评论 假设你需要维护一个列表,这 ...
随机推荐
- npm--npm+gulp发布至私服,报错E503解决方案
由于项目共享组件库的需要,我们搭建了npm私有服务器,供本公司几个项目可以访问.组件库使用gulp+webpack+npm进行打包构建,私服使用的是 Verdaccio直接搭建的,一键式傻瓜搭建,贼好 ...
- streamreader
using (StreamReader sr = new StreamReader(@"C:\Documents and Settings\Administrator\桌面\1.txt&qu ...
- windows本地破解用户口令
实验所属系列:操作系统安全 实验对象: 本科/专科信息安全专业 相关课程及专业:信息网络安全概论.计算机网络 实验时数(学分):2学时 实验类别:实践实验类 实验目的 1.了解Windows2000/ ...
- leetcode113:sudoku-solver
题目描述 请编写一个程序,给数独中的剩余的空格填写上数字 空格用字符'.'表示 假设给定的数独只有唯一的解法 这盘数独的解法是: 红色表示填上的解 Write a program to solve a ...
- python数据分析 Numpy基础 数组和矢量计算
NumPy(Numerical Python的简称)是Python数值计算最重要的基础包.大多数提供科学计算的包都是用NumPy的数组作为构建基础. NumPy的部分功能如下: ndarray,一个具 ...
- SQL删除语句DROP、TRUNCATE、 DELETE 的区别
主要介绍了SQL删除语句DROP.TRUNCATE. DELETE 的区别,帮助大家更好的理解和学习sql语句,感兴趣的朋友可以了解下 DROP: 1 DROP TABLE test; 删除表test ...
- Docker学习笔记:在Windows7下安装
下载 DockerToolbox-19.03.1.exe 进行安装: 安装比较简单,双击运行,点下一步即可,可以勾选自己需要的组件: 安装成功后,桌边会出现三个图标,如下图所示: 点击 Docker ...
- 使用arm-none-eabi-gdb报错error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory
使用arm-none-eabi-gdb报错error while loading shared libraries: libncurses.so.5: cannot open shared objec ...
- 企业网络拓扑RSTP功能实例
组网图形 RSTP简介 以太网交换网络中为了进行链路备份,提高网络可靠性,通常会使用冗余链路.但是使用冗余链路会在交换网络上产生环路,引发广播风暴以及MAC地址表不稳定等故障现象,从而导致用户通信质 ...
- makefile 函数
1. findstring $(findstring <find>, <in>) 从 in 中查找 find ,如果找到则返回find,否则返回空 str1=1111 str2 ...