二、列表和元组


目录

一、列表

1.列表的常用方法

1.1遍历列表

1.2获取元素

1.3添加元素

1.4插入元素

1.5修改元素

1.6删除元素

1.7列表分片(slice)

1.8列表排序

2.列表其他内置方法

2.1copy() 和 clear() 方法实例

2.2列表推导式(列表解析)

2.3方法列表

二、元组

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

 

 

 

 


 

上一篇:小甲鱼第011讲:列表:一个打了激素的数组2 | 课后测试题及答案


下一篇:IntelliJ IDEA 2021.3.2最新激活破解教程(可激活至2099年,亲测有效)