内容:
- 列表基础知识
- 列表基本操作
- 元组基础知识
- 元组基本操作
一、列表基础知识
1.定义
列表(List)是可变的序列,也是一种可以存储各种数据类型的集合,用中括号( [ ] )表示列表的开始和结束,元素之间用逗号( , )隔开
>>> #基本格式、下标使用 >>> a=[1, 2, "你好", 4.8, 'abc'] >>> print(a[2]) 你好 >>>
注意:列表元素不是只能存储数字、字符串这些数据类型,还可以存储列表、元组、字典等其他数据类型;列表的下标从0开始
二、列表的基本操作
列表支持对集合元素进行:增、删、查、改、合并等操作
- append(): 在列表末尾增加元素
- clear(): 列表清空
- copy(): 复制生成另外一个列表
- count: 统计指定元素个数
- extend: 两个列表元素合并
- index: 返回指定元素的下标
- insert: 在指定位置插入新元素
- pop: 删除并返回指定下标相应的元素
- remove: 删除列表中指定元素
- reverse: 反转列表元素顺序
- sort: 对列表元素进行排序
通过help可以查看某方法的用法
>>> a=[1, 2, "你好", 4.8, 'abc'] >>> help(a.append) Help on built-in function append: append(...) method of builtins.list instance L.append(object) -> None -- append object to end >>>
列表的方法示例如下:
append(obj):
>>> a = [1, 2, "你好", 4.8, 'abc'] >>> a.append(3) >>> print(a) [1, 2, '你好', 4.8, 'abc', 3]
clear():
>>> a=[1, 2, "你好", 4.8, 'abc'] >>> a.clear() >>> print(a) []
copy(obj):
>>> a=[1, 2, "你好", 4.8, 'abc'] >>> b = a.copy() >>> print(b) [1, 2, '你好', 4.8, 'abc']
count(obj):
>>> a=[1, 2, "你好", 4.8, 'abc',2] >>> print(a.count(2)) 2
extend(obj):
>>> a=[1, 2, "你好", 4.8, 'abc',2] >>> b=[2,3,4,5,[1,2,3]] >>> a.extend(b) >>> print(a) [1, 2, '你好', 4.8, 'abc', 2, 2, 3, 4, 5, [1, 2, 3]] >>> print(b) [2, 3, 4, 5, [1, 2, 3]] >>> # 这是b合并到a,所以a变化,b没变
index(obj):
>>> a=[1, 2, "你好", 4.8, 'abc',2] >>> print(a.index(2)) 1 >>> # 查询到的是第一个被查到的元素下标
insert(obj):
>>> a=[1, 2, "你好", 4.8, 'abc',2] >>> a.insert(3,'good') >>> print(a) [1, 2, '你好', 'good', 4.8, 'abc', 2]
pop(obj):
>>> a=[1, 2, "你好", 4.8, 'abc',2] >>> a.pop(2) '你好' >>> # 指定的下标,并返回该下标对应的元素
remove(obj):
>>> a=[1, 2, "你好", 4.8, 'abc',2] >>> a.remove(2) >>> print(a) [1, '你好', 4.8, 'abc', 2] >>> a.remove(2) >>> print(a) [1, '你好', 4.8, 'abc'] >>> # 指定的是元素,并且是从左往右第一个元素
reverse:
>>> a=[1, 2, "你好", 4.8, 'abc',2] >>> a.reverse() >>> print(a) [2, 'abc', 4.8, '你好', 2, 1]
sort(obj):
>>> a=[2,4,14,6,3] >>> a.sort() >>> print(a) [2, 3, 4, 6, 14] >>> a=['123', 'Google', 'Runoob', 'Taobao', 'Facebook'] >>> a.sort() >>> print(a) ['123', 'Facebook', 'Google', 'Runoob', 'Taobao']
如果 sort 对有不同数据类型的元素进行排序,则会报错,如:
>>> a=[123, 'Google', 'Runoob', 'Taobao', 'Facebook'] >>> a.sort() Traceback (most recent call last): File "<pyshell#60>", line 1, in <module> a.sort() TypeError: '<' not supported between instances of 'str' and 'int'
三、元组基础知识
1.定义
元组(Tuple)是不可变序列,也是一种可以存储各种数据类型的集合,用小括号(( ))表示元组的开始和结束,元素之间用逗号( , )隔开
>>> # 基本格式和用法 >>> a=(1,2,3,'你好','abf') >>> print(a) (1, 2, 3, '你好', 'abf') >>> a (1, 2, 3, '你好', 'abf') >>> print(a[1]) 2 >>>
四、元组的基本操作
1.元组的基本操作包括建立元组、删除元组、合并元组、统计元素、转换元组等;
注意:这里缺少列表具有的排序、元素修改、元素增加、元素删除等操作功能。
与列表不同,如果元组要改变,是需要重新分配一个内存地址的
>>> # 以下为列表 >>> a=[1,2,3] >>> id(a) 2435309160456 >>> a.append(4) >>> print(a) [1, 2, 3, 4] >>> id(a) 2435309160456 >>> # 以下为元组 >>> a=(1,2,3) >>> id(a) 2435317968968 >>> a=a+(4,) >>> print(a) (1, 2, 3, 4) >>> id(a) 2435304470232 >>>
元组的操作方法有:count(统计指定元素的个数)、index(返回指定元素的下标)
2.元组的操作还可以借助Python的内置函数来完成,如下(也适用于列表):
- len: 统计元组元素个数
- max: 返回元组中最大值的元素
- min: 返回元组中最小值的元素
- tuple: 将列表转化为元组
- type: 返回对象类型
- del: 删除整个元组对象
- sum: 将元组对象的所有元素求和
>>> a=[1,4,9,2,19,3] >>> tuple(a) (1, 4, 9, 2, 19, 3) >>> type(a) <class 'list'> >>> b=tuple(a) # 对列表进行转换 >>> print(b) (1, 4, 9, 2, 19, 3) >>> type(b) # 查看数据类型 <class 'tuple'> >>> max(b) # 求最大值 19 >>> min(b) # 求最小值 1 >>> sum(b) # 求和 38 >>> len(b) # 统计元素个数 6 >>> del(b) # 删除元组 >>> print(b) Traceback (most recent call last): File "<pyshell#38>", line 1, in <module> print(b) NameError: name 'b' is not defined >>>