目录
一、列表
1.列表的常用方法
2.列表其他内置方法
二、元组
1.元组的性质
2.元组的内置函数
三、其他
1.list、tuple、str之间的相互转化
2.python的负数索引
一、列表
1.列表的常用方法
设列表的名称为member:
1.1遍历列表
for each in member:
print(each)
1.2获取元素
member[索引值] # 索引值从0开始
1.3添加元素
member.append(要添加的元素) # 每次只能添加一个元素,被添加的元素自动添加到列表末尾
member.extend([元素1,元素2]) # 以列表的形式追加新元素到原列表,每次可以添加多个元素,被添加的元素自动添加到列表末尾
1.4插入元素
member.insert(a,b) # a表示要追加的位置,b表示被插入的元素
1.5修改元素
member = [1,[1,2,['hello world']],3,5,8,13,18]
member[1][2][0] = 'hello_world'
print (member)
# 运行结果
[1, [1, 2, ['hello_world']], 3, 5, 8, 13, 18]
1.6删除元素
#1
member.remove('元素名')
#2
del member[索引值]
#删除整个列表
del member
#弹栈,用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
member.pop(索引值)
pop()方法实例
member = [123, 'xyz', '我爱中国', 'abc']
# 不同于C语言,python列表数据可以是混合类型
print("A list:", member.pop())
print("B list:", member.pop(2))
print(member)
# 运行结果
('A list:', 'abc')
('B list:', '我爱中国')
[123, 'xyz']
从列表的末尾取出一个元素,并将这个元素插入到列表的最前面:
member.insert(0,member.pop())
1.7列表分片(slice)
member[1:3] # 原列表中索引值1~3的元素组成新的列表
member[1:] # 索引值从1开始到最后一个元素
member2 = member[:] # 列表的拷贝
member[0:9:2] # 索引从2~8,跨步2取数(步长不能为0,但可以为负)
member[::-1] # 原列表翻转
member[0:1] # 返回一个只含有第0个元素的列表
1.8列表排序
member.sort() # 顺序排序
member.sort(reverse=True) # 逆序排序
member.reverse()
2.列表其他内置方法
2.1copy() 和 clear() 方法实例
list1 = [1,[1,2,['我爱中国']],3,5,8,13,18]
list2 = list1.copy()
list1.clear()
print('list1:', list1)
print('list2:', list2)
# 运行结果
list1: []
list2: [1, [1, 2, ['我爱中国']], 3, 5, 8, 13, 18]
2.2列表推导式(列表解析)
可以用来动态地创建列表,语法:[有关A的表达式 for A in B]
# 分别打印0~9各个数的平方,并存在了列表里
list1 = [x**2 for x in range(10)]
print('list1:', list1)
# 运行结果
list1: [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
2.3方法列表
方法 | 含义 |
---|---|
count() | 计算并返回指定元素的数量,同样适用于元组 |
index(目标,起始位置,截止位置) | 返回参数在列表中的位置,同样适用于元组 |
reverse() | 翻转列表 |
sort() | 对列表成员从小到大排序 |
sort(reverse=True) | 对列表成员从大到小排序 |
operator.eq(list1,list2) | 比较两个列表的元素(需import operator) |
len(list1) | 计算列表元素的个数 |
max(list1) | 返回列表中元素最大值 |
min(list1) | 返回列表中元素最小值 |
list(tuple1) | 将元组转换为列表 |
二、元组
1.元组的性质
- 所有的多对象的、逗号分隔的、没有明确用符号定义的这些集合,默认的类型都是元组 例如
x, y, z = 1, 2, 3
- 元组的标志性符号不是小括号,而是逗号;在拼接只有一个元素的元组的时候,逗号和小括号必须同时存在,缺一不可。
- 元组中的元素值是不允许删除的,但可以使用del语句来删除整个元组(python回收机制会在元组不再被使用到时自动删除)
temp = ('如果', '我是', '流浪', '云朵')
temp = temp[:2] + ('天边',) + temp[2:]
print(temp)
# 运行结果
('如果', '我是', '天边', '流浪', '云朵')
2.元组的内置函数
方法 | 含义 |
---|---|
operator.eq(temp1, temp2) | 比较两个元组的元素(需import operator) |
len(temp1) | 计算元组中元素个数 |
max(temp1) | 返回元组中元素最大值 |
min(temp1) | 返回元组中元素最小值 |
tuple(list1) | 将列表转换为元组 |
三、其他
1.list、tuple、str之间的相互转化
# tuple to str a = ('hello', 'world', 'python') b = ''.join(a) print(type(b)) print(b)
# 运行结果 <class 'str'> hello world python
# str to list # 通过内置函数list()强制转换 a = 'hello world' print(list(a)) print(list(a.split(' ')))
# 运行结果 ['h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd'] ['hello', 'world']
# 手动转换 a = 'hello world' b = [] for s in a: b.append(s) print(b)
# 运行结果 ['h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd']
2.python的负数索引
正常下标 | 0 | 1 | 2 |
列表内容 | 1 | 3 | 2 |
负数下标 | -3 | -2 | -1 |