- 列表
列表与C++中的数组类似,列表一旦定义,,其包含的元素个数就确定了(在不进行增加、删除等系列操作的情况下),但同一个列表的元素可以赋不同类型的值,而且列表内容时可变的,另外对序列的操作也同样适用于列表。
对列表的单个元素赋值是通过索引完成的;而增加元素需要用到函数append(),append()是用于在列表末尾添加一个新对象,例如在列表list后增加一个新元素obj:list.append(obj),其中obj可以赋空值即None;如需删除列表中的某个元素,可以用到del。
分片赋值引入一个新的函数:list(),其作用是直接将字符串转化为列表。分片赋值具有一下特性:(1)通过分片赋值对列表进行变更;(2)使用与原序列不等长的序列将分片替换;(3)在不替换任何元素的情况下在任意位置插入新元素。
另外,通过分片赋值也可以删除元素,而且分片赋值删除的功能和del删除的操作结果一样。
嵌套列表顾名思义就是列表里面有列表。例如,a=[1],b=[2],c=[a,b].
- 列表方法
方法即是函数,与对象联系紧密,这里的对象可以是列表、数字、字符串或其他类型的对象。一般格式为:对象.方法(参数)。 这里的方法格式与C++中的类的对像调用成员函数的方法类似。
1、append(),作用是在列表末尾添加新对象:list.append(obj)
2、count(),作用是统计某个元素在列表里出现的次数:list.count(obj)
3、extend(),作用是在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表):list.extend(list1)(把一个列表添加到另一个列表的后面)需要注意的是extend()方法是将两个列表加起来后赋给list。而简单的相加操作不会改变原序列,而是返回一个全新的序列。
4、index(),作用是从列表中找出某个值第一个匹配项的索引位置(该值的编号)。对于不在列表中的元素,使用index()会报错:list.index(obj)。
5、insert(),作用是将对象插入列表。(此方法需要用到index()方法找到需要插入的索引位置:list.insert(index,obj)。
6、pop(),作用是移除列表中的一个元素(默认移除最后一个元素(在没有设置参数的情况下)),并且返回被移除元素的值:list.pop(obj=list[-1]),其中“obj=list=[-1]”是默认移除最后一个元素,设置参数时即:list.pop(0)。需要注意的是pop方法是唯一一个既能修改列表又能返回元素值(除None)的列表方法。
使用pop方法能够实现常见的数据结构:栈,放入和移除操作分别叫做入栈和出栈
pop与append的作用恰好相反,当入栈出栈的值时,原序列不会有什么变化。
7、remove(),作用是移除列表中第一个与参数匹配的项:list.remove(obj)。同样的,移除列表中不存在的元素会报错。
8、reserve(),作用是反向列表中的元素:list.reserve()。此方法不需要传入参数。
9、sort(),作用是对某序列进行排序,在未指定参数的情况下按照字符编码的顺序升序排序,若指定参数就按照指定参数的方法进行排序:list.sort(func),其中参数func可有可无。另外需要注意是的sort方法修改了序列但没有返回值,因此:n=list.sort,print(n)结果为“None”,还有就是如果不想修改原列表,需要新建一个变量将原序列分片赋值给新建变量否则利用sort方法会修改两个序列。此外有一个同样功能的sorted()函数:b=sorted(a),该函数可以直接对序列的副本进行排序,sort方法传入参数时,有两个可选参数即key和reserve。需要注意的是对于排序的序列,序列所包含的元素类型只能是char类型或只能是int类型,不能两种类型同时存在。
10、clear(),作用是清空列表,与del a[:]结果一样。此方法不需要传入参数:list.clear()
11、copy(),作用是复制列表,与c=a[:]结果一样。
- 元组
元组与列表相似,当不同的是元组的元素不能够修改(字符串也是如此,不能够修改)。创建元组的方法:使用圆括号“()”将一系列的元素括起来,元素间用逗号隔开(如果直接将元素用逗号隔开,系统也会自动创建元组),特殊的地方是如果只是一个元素,需要在该元素后加一个逗号,否则不是元组。
tuple函数可以将一个序列转换为一个元组,其参数为序列,如果参数是元组时,元组会被原样返回。
- 元组的基本操作
1、访问元组:可以使用下标访问,也可分片访问。
2、修改元组:元组的元素值不能修改,但可以对元组连接组合。直接用“+”号拼接。
3、删除元组:不能单独删除元组的某个元素,但可以使用del语句删除整个元组。(包括元组名(指向元组的变量))
4、元组的索引、截取:元组可以是序列的一种特殊情况,可以像序列那样,访问元组中指定位置的元素,也可以截取索引的一段元素。
- 元组的内置函数
len(tuple)用于计算元组的个数、max(tuple)用于返回元组中的元素最大值、min(tuple)用于返回元组中元素最小值、tuple(seq)用于将列表转换为元组。
- 元组与列表的区别
列表是可变的,元组一旦定义就不能更改,是不变的。另外,元组和列表都可以嵌套使用,元组中也可以嵌套列表,当元组嵌套列表时,列表可以修改,但列表的元素个数不能更改。嵌套时的访问和C语言中二维数组的访问类似。
1054

被折叠的 条评论
为什么被折叠?



