一、列表
1. 什么是列表
- 一个列表需要使用中括号[]将所有数据框起来,里面中的每一个数据叫做“元素”, 元素与元素之间使用逗号隔开。
list=['李雷','韩梅梅',180,3.5]
print(list)
- 各种类型的数据(字符串、整数、浮点数)都能放在列表里面
2. 从列表中提取单个元素
- 列表中的各个元素,是有序排列的,每一个元素都有自己的位置标号,这个位置标号就叫做下标。
- 列表中的元素从左往右进行排列, 它们对应的下标从0,1,2开始逐渐递增。
- 所以,我们可以通过列表名搭配下标方式来提取列表中的元素,读取元素中的内容。
# 提取元素'大黄蜂'
transformers = ['擎天柱','大黄蜂','救护车']
print(transformers[1])
3. 从列表中提取多个元素
# 请看示例
transformers = ['擎天柱','大黄蜂','救护车','巨无霸福特','红蜘蛛']
print(transformers[:])
print(transformers[2:])
print(transformers[:2])
print(transformers[1:3])
print(transformers[2:4])
# 每次打印出来的内容都是不相同的。
-
通过冒号来截取列表元素的操作叫切片,就是将列表的某个片段,通过切割下标的方式来提取多个元素。
-
提取原则:冒号左边空,就要从下标为0的元素开始取。右边空,就要取到列表的最后一个元素。后半句:冒号左边数字对应的元素要拿,右边的不动
# 提取lily和lucy names = ['李雷','lily','lucy','韩梅梅'] print(names[1:3])
4. 给列表添加/删除元素
-
用append()函数给列表增加元素。append是 附加,追加,增加,增补的意思。
transformers = ['擎天柱','大黄蜂','救护车','巨无霸福特','红蜘蛛'] transformers.append('萨克巨人') print(transformers)
-
用del函数的语法是del 列表名[元素的下标],给列表删除元素
transformers = ['擎天柱','大黄蜂','救护车','巨无霸福特','红蜘蛛'] del transformers[2] print(transformers)
5. 小结
- 思考:
- 添加多个元素怎么操作?
- 在制定位置添加元素怎么操作?
- 删除多个元素怎么操作?
6. 列表的其他功能
1.列表拼接
list1 = [1,2,3,4]
list2 = [6,7,8,9]
print(list1+list2)
a = ['杨过','小龙女','神雕']
b = ['尹志平','黄蓉','郭靖']
print(a+b)
```
2.添加元素
- list.append(new)函数,添加新元素到列表中去,只能添加一个,默认添加在列表末尾
a = ['杨过','小龙女','神雕']
a .append('尹志平')
print(a)
- list.insert(index,new)函数,只能添加一个元素,可指定在具体的位置添加
a = ['杨过','小龙女','神雕']
a .insert(-1,'尹志平')
print(a)
3.追加序列的值。
-
list.extend()函数:在列表的末尾追加另一个列表的值
a = ['杨过','小龙女','神雕'] a.extend(['尹志平','洪七公']) print(a) list1 = [1,2,3,4] list2 = [6,7,8,9] list1.extend(list2) print(list1)
4.删除元素
-
del list[index]列表索引的函数:如前所述
-
list.pop(index)函数:返回被删除的元素,默认删除最后一个元素;可指定删除具体位置的元素并返回。可将返回的值赋值给新的变量
>>> list = [1,2,3,4,5]
>>> list.pop()
5
>>> print(list)
[1, 2, 3, 4]
>>> list = [1,2,3,4,5,6,]
>>> list.pop(2)
3
>>> print(list)
[1, 2, 4, 5, 6]
>>>
>>> name = ['杨过','小龙女','李靖','哪吒']
>>> print(name)
['杨过', '小龙女', '李靖', '哪吒']
>>> mc = name.pop(2)
>>> print(name)
['杨过', '小龙女', '哪吒']
>>> print(mc)
李靖
>>>
mylist = [20, 34, 56, 47, 58, 69,20,40,34,20]
option = int(input('请输入想要删除的数字:'))
for counter,x in enumerate(mylist):
if x == option:
num = mylist.pop(counter)
print(mylist)
print(num)
请输入想要删除的数字:20
[34, 56, 47, 58, 69, 40, 34]
20
-
list.remove(’‘元素’’):找到指定元素,再删除,但若列表中有重复的元素,只能删除列表中的第一个元素;若要删除列表中所有重复的元素,可采用count()和for循环进行操作。
>>> name = ['lily','lucy'] >>> name.remove('lily') >>> print(name) ['lucy'] >>> num=[20,40,56,67,78,20,30,20] >>> num.remove(20) >>> print(num) [40, 56, 67, 78, 20, 30, 20] >>> num = [20,30,40,30,20,20,50