Python 自学笔记(教程)(四)
- 一、列表
- 1. 什么是列表
- 2. 从列表提取单个元素
- 3. 从列表提取多个元素
- 4. 给列表增加元素
- 5. 给列表删除元素
- 二、字典
- 1. 什么是字典
- 2. 从字典中提取元素
- 3. 给字典增加元素
- 4. 给字典删除元素
- 三、列表和字典的区别
- 1. 字典与列表的共同点
- 2. 字典与列表的不同点
- 传送门
一、列表
1. 什么是列表
先看一下列表在代码中是什么样子的
students = ['小王', '小李', '小明']
其中:[‘小王’, ‘小李’, ‘小明’] 就是一个列表
students 是列表名
“ = ” 是赋值符号
一个列表需要用中括号 [ ] 把各种数据括起来
中括号里面的每一个数据叫作元素
每个元素之间都要用英文逗号隔开
知道了列表的怎么定义赋值现在看一看列表怎么输出打印
如果要打印整个列表:
students = ['小王', '小李', '小明']
print(students)
屏幕打印:
[‘小王’, ‘小李’, ‘小明’]
列表是可以存放不同类型的数据的
比如:
information = ['小王', 19, 178.5]
2. 从列表提取单个元素
要打印列表中某一个元素:
students = ['小王', '小李', '小明']
print(students[1])
屏幕打印:
小李
注意在程序设计语言中,数数是从 0 开始
3. 从列表提取多个元素
先看一下代码,注意有无英文冒号 : 的情况下的区别
num = [0, 1, 2, 3, 4]
print(num[:])
print(num[2:])
print(num[:2])
print(num[1:3])
print(num[2:4])
屏幕打印:
[0, 1, 2, 3, 4]
[2, 3, 4]
[0, 1]
[1, 2]
[2, 3]
上面这种用英文冒号来提取多个列表元素的方法叫切片
切片的使用方法为:
- 哪边空取哪边:
- 当冒号左边为空时,从列表开头取到冒号
- 当冒号右边为空时,从冒号取到列表结尾
- 左取右不取:
- 若冒号左边有数字,那么这个数字对应的元素要取
- 若冒号右边有数字,那么这个数字对应的元素不取
- 两边都不空取交集
4. 给列表增加元素
给列表增加元素需要用到 append() 函数
先试试向列表中添加单个元素:
num = [1, 2]
num.append(3)
print(num)
屏幕打印:
[1, 2, 3]
再来试试添加多个元素:
num = [1, 2]
num.append(3,4)
print(num)
屏幕打印:
TypeError: append() takes exactly one argument (2 given)
这句话的意思是:append() 函数的括号里只能接受一个参数,但却给了两个,所以报错了
注意:
- 使用 append() 函数添加元素入列表时,每次只能添加一个元素,单个列表也算是一个元素
- 列表中的元素可以是字符串、数字,也可以是列表本身(即列表内部支持嵌套)
- append() 函数添加的元素会添加在列表末尾
5. 给列表删除元素
给列表删除元素需要用到 del 语句
del 列表名[元素位置]
先试试删除列表中单个元素:
num = [1, 2, 3]
num.del(3)
print(num)
屏幕打印:
[1, 2]
先试试删除列表中多个元素:
num = [1, 2, 3]
num.del(1,3)
print(num)
屏幕打印:
[2]
由此可见:del() 函数与 append() 不同就在于 del() 函数一次可以删除单个或多个元素,而 append() 函数一次只能添加单个元素
且 del() 函数也可以使用切片
二、字典
1. 什么是字典
我们先在代码里看看字典长什么样:
information = {'小王':90, '小李':85, '小明':95}
其中:{‘小王’:90, ‘小李’:85, ‘小明’:95} 就是一个列表
information 是字典名
“ = ” 是赋值符号
一个列表需要用大括号 { } 把各种数据括起来
我们已经知道了在列表中 [ ] 里的元素是一个一个的
而在字典中大括号里面的元素是一个一个的键值对
键与值之间用英文冒号连接
如:‘小王’:90
同时每个元素之间也都要用英文逗号隔开
对于列表和字典的长度可以使用 len() 函数来计算
students = ['小王', '小李', '小明']
information = {'小王':90, '小李':85, '小明':95}
print(len(students))
print(len(information))
屏幕打印:
3
3
即该列表和字典的长度均为 3
使用字典还需要注意:
字典里的键是唯一补课重复的,而值可以重复
2. 从字典中提取元素
从字典中提取元素的方法和列表有些相似
information = {'小王':90, '小李':85, '小明':95}
print(information['小李'])
屏幕打印:
90
再次强调字典的元素是键值对
所以在提取时使用键即可提取到其对应的值
而要完整打印字典则可以像这样:
information = {'小王':90, '小李':85, '小明':95}
print(information)
屏幕打印:
{‘小王’:90, ‘小李’:85, ‘小明’:95}
3. 给字典增加元素
要在字典中增加元素可以直接为键赋值
information = {'小王':90, '小李':85, '小明':95}
information['小红'] = 90
print(information)
屏幕打印:
{‘小王’:90, ‘小李’:85, ‘小明’:95, ‘小红’:90}
需要注意的是:
增加的元素依然是从字典尾部添加
4. 给字典删除元素
给字典删除元素可以和列表一样使用 del 语句
del 字典名[键]
比如:
information = {'小王':90, '小李':85, '小明':95}
del information['小李']
print(information)
屏幕打印:
{‘小王’:90, ‘小明’:95}
三、列表和字典的区别
1. 字典与列表的共同点
- 修改列表和字典中的元素都需要使用赋值语句
students = ['小王', '小李', '小明']
students[1] = '小红'
print(students)
information = {'小王':90, '小李':85, '小明':95}
information['小明'] = 80
print(information)
屏幕打印:
[‘小王’, ‘小红’, ‘小明’]
{‘小王’:90, ‘小李’:85, ‘小明’:80}
- 列表和字典都可以随意嵌套,除之前学过的数据类型外,列表可嵌套其他列表和字典,字典也可嵌套其他字典和列表。
比如列表嵌套列表:
students = [['小明', '小红', '小刚', '小美'], ['小强', '小兰', '小伟', '小芳']]
那么新的问题来了,怎么才可以取出这个列表里的 ‘小美’
可以这么办:
students = [['小明', '小红', '小刚', '小美'], ['小强', '小兰', '小伟', '小芳']]
print(students[0][3])
屏幕打印:
‘小美’
再比如字典嵌套字典:
information = {
'第一组':{'小明':95, '小红':90, '小刚':100, '小美':85},
'第二组':{'小强':99, '小兰':89, '小伟':93, '小芳':88}
}
对于类似嵌套建议在写代码时注意排版把嵌套关系展示清楚
在这里要取出小美的信息可以这么做:
information = {
'第一组':{'小明':95, '小红':90, '小刚':100, '小美':85},
'第二组':{'小强':99, '小兰':89, '小伟':93, '小芳':88}
}
print(information['第一组']['小美'])
屏幕打印:
85
最后在看一下字典列表相互嵌套:
students = {
'第一组':['小明', '小红', '小刚', '小美'],
'第二组':['小强', '小兰', '小伟', '小芳']
}
print(students['第一组'][3])
information = [
{'小明':95, '小红':90, '小刚':100, '小美':85},
{'小强':99, '小兰':89, '小伟':93, '小芳':88}
]
print(information[0]['小美'])
屏幕打印:
‘小美’
85
总之一定要记住在字典中是键名定位,列表中时元素位置定位
2. 字典与列表的不同点
- 列表中的元素的位置关系是不可随意更改的,列表是有序排列,用元素位置定位元素,而字典是无序排列,用唯一的键定位元素
传送门
Python 自学笔记(教程)(一)
Python 自学笔记(教程)(二)
Python 自学笔记(教程)(三)
更多推荐
Python 自学笔记(教程)(四)
发布评论