三、列表
1.列表
由一系列按特定顺序排列的元素组成。也可以将任何东西加入列表中,其中的元素之间可以没有任何关系。
list = ["Klara", "_", 19, 'C']
print(list)
运行结果
['Klara', '_', 19, 'C']
和C语言的结构体和数组有点像,感觉像两者杂交,不过挺方便的。
直接打印列表时,除了列表元素,还会把方框和引号(单引号)打出来。
2.增删查改
查与访问
要访问列表元素,可指出列表的名称,再指出元素的索引,并将其放在方括号内。
list = ["Klara", "_", 19, 'c']
message = "I'm " + list[0] + list[1] + str(list[2]) + list[3].upper() + '.'
print(message)
运行结果
I'm Klara_19C.
索引从零开始,和C语言一样。
但Python中索引可以是负数,-1返回最后一个列表元素,-2返回倒数第二个列表元素。
列表应该也是一种数据类型,不能直接和字符串合并。
与C语言的数组不同,列表不会出现溢出的问题,但是会有越界问题出现。
改
直接访问并赋值
list = ["Klara", "_", 19, 'c']
list[1]= " "
print(list)
运行结果
['Klara', '_', 19, 'c']·
增
方法append()
在列表末尾添加元素
list = []
list.append("Klara")
list.append("_")
list.append(19)
list.append('c')
print(list)
运行结果
['Klara', '_', 19, 'c']
方法insert()
在列表中插入元素
list = ["Klara", "_", 19, 'c']
list.insert(0,"I'm ")
print(list)
运行结果
["I'm ", 'Klara', '_', 19, 'c']
删
del
语句
可删除任何位置处的列表元素
list = ['math', 'English', 'physics']
del list[1]
print(list)
运行结果
['math', 'physics']
使用del
语句将值从列表中删除后,你就无法再访问它了.
方法pop()
可删除列表末尾的元素,并让你能够接着使用它。
list = ["Klara", "_", 19, 'c']
list.pop()
list.pop()
popped_list = list.pop()
print(list)
print(popped_list)
运行结果
['Klara']
_
方法remove()
删除第一个指定的值
list = ['math', 'English', 'physics']
list.remove('English')
print(list)
运行结果
['math', 'physics']
指定值不存在会报错。
3.组织列表
方法sort()
按字典序正排序
list = ['math', 'English', 'physics']
list.sort()
print(list)
运行结果
['English', 'math', 'physics']
列表元素需要都是字符串。
如果要逆排序向sort()
方法传递参数reverse = True
。
list = ['math', 'English', 'physics']
list.sort()
print(list)
运行结果
['physics', 'math', 'English']
对列表元素排列顺序的修改是永久性的
函数sorted()
list = ['math', 'English', 'physics']
print(list)
print(sorted(list))
print(list)
运行结果
['math', 'English', 'physics']
['English', 'math', 'physics']
['math', 'English', 'physics']
同样,逆排序也可向函数sorted()
传递参数reverse=True
。
对列表元素排列顺序的修改是临时性的
函数reverse()
reverse()
反转列表元素的排列顺序,不是指按与字母顺序相反的顺序排列列表元素
list = ['math', 'English', 'physics']
list.reverse()
print(list)
运行结果
['physics', 'English', 'math']
对列表元素排列顺序的修改是永久性的
函数len()
返回列表长度
list = ['math', 'English', 'physics']
print(len(list))
运行结果
3