列表
Python内置的一种数据类型是列表:list。list是一种有序的集合,可以随时添加和删除其中的元素。
比如,classmates就是个列表:
>>> classmates = ['Michael', 'Bob', 'Tracy']
>>> classmates
['Michael', 'Bob', 'Tracy']
用索引来访问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错误,所以,要确保索引不要越界,记得最后一个元素的索引是总的个数-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
列表的内置方法
-
append()
添加元素至末尾:
>>> classmates.append('Adam')
>>> classmates
['Michael', 'Bob', 'Tracy', 'Adam'] -
clear()
清除列表里的元素
>>> classmates = ['Michael', 'Bob', 'Tracy']
>>> classmates.clear()
>>> classmates
[] -
copy()
复制列表,也可用[:],效果一样
>>> classmates = ['Michael', 'Bob', 'Tracy']
>>> classmates.copy()
['Michael', 'Bob', 'Tracy']
>>> classmates[:]
['Michael', 'Bob', 'Tracy'] -
count()
统计元素出现的次数
>>> dd = [1, 2, 3, 4, 4, 2, 6, 8, 2]
>>> dd.count(2)
3 -
extend()x
链接两个列表,也可以用+号,+号会创建一个新对象,extend则在原有的对象上修改
>>>a = [1, 2, 3]
>>>b = [4, 5, 6]
>>>c = a + b
>>>c
[1, 2, 3, 4, 5, 6]
>>> a.extend(b)
>>> a
[1, 2, 3, 4, 5, 6] -
index()
从列表中找出某个值第一个匹配项的索引位置,可添加开始结束位置
>>> dd = [1, 2, 3, 4, 4, 2, 6, 8, 2, 3, 1]
>>> dd.index(2)
1
>>> dd.index(2, 6)
8
>>> dd.index(2, 6, 9)
8 -
insert()
元素插入到指定的位置,比如索引号为1的位置。
>>> classmates = ['Michael', 'Bob', 'Tracy']
>>> classmates.insert(1, 'Jack')
>>> classmates
['Michael', 'Jack', 'Bob', 'Tracy'] -
pop()
要删除指定位置的元素,用pop(i)方法,其中i是索引位置,并返回删除的元素如果没有i就是删除最后一个。另外del方法也可以做到
>>> classmates = ['Michael', 'Jack', 'Bob', 'Tracy']
>>> classmates.pop(2)
'Bob'
>>> classmates.pop()
'Tracy'
>>> classmates = ['Michael', 'Jack']
>>> del classmates[1]
>>> classmates
['Michael']
-
remove()
移除指定的元素
>>> classmates = ['Michael', 'Jack', 'Bob', 'Tracy']
>>> classmates.remove('Bob')
>>> classmates
['Michael', 'Jack', 'Tracy'] -
reverse()
翻转列表
>>> classmates = ['Michael', 'Jack', 'Bob', 'Tracy']
>>> classmates.reverse()
>>> classmates
['Tracy', 'Bob', 'Jack', 'Michael'] -
sort()
从小到大排序,内置参数reverse默认False,设置成True后变为从大到小
>>> dd = [1, 2, 3, 4, 4, 2, 6, 8, 2, 3, 1]
>>> dd.sort()
>>> dd
[1, 1, 2, 2, 2, 3, 3, 4, 4, 6, 8]
>>> dd.sort(reverse = True)
>>> dd
[8, 6, 4, 4, 3, 3, 2, 2, 2, 1, 1]
元组
元组tuple,用( )表示,它和列表list非常相似,区别就是元组一旦初始化就不能修改。没有append()
, insert()
这样的方法,内置的方法只有count()
, index()
两个。其他获取元素的方法和列表list是一样的。
要注意当只有一个元素的tuple定义是需要加一个逗号。
>>> t = (1, )
网友评论