1.列表
1.列表的定义:
定义:一种将多个数据组合在一起的容器
标识符:[ ]
关键字:list
定义一个空列表
python
lst1 = []
定义一个有值的列表,每个元素之间用英文的逗号隔开
python
lst2 = [1, 2, 3, 4]
获取列表的类型:
python
lst2 = [1, 2, 3, 4] # 定义一个有值的列表,每个元素之间用英文的逗号隔开
print(type(lst2)) # <class 'list'>
2.列表的增删改查操作:
特征:有序、可变
有序:列表中的每个元素都是有索引(python中的索引,都是默认从 0 开始)
列表的取值语法:列表的变量名称[索引的值]
python
lst1 = [1, 2, 3, 4, 5]
print(lst1[3]) # 4
获取列表的长度 -- len()
python
lst1 = [1, 2, 3, 4, 5] # 有几个元素,那么len长度就是多少
print(len(lst1))
列表可以倒叙输出 -- reverse()
python
lst1.reverse() # 先执行方法完成倒叙
print(lst1) # 然后再去查询
例题:lst3 = [100, 3.14, True, "qsdd", [1, 2, 3, 4]]
问列表的长度是多少 长度为5 但是是列表的嵌套
问题:lst3的长度为?
python
lst3 = [100, 3.14, True, "秋殇大大", [1, 2, 3, 4], [1, 2, 3, 4, [1, 2, 3, 4], [1, 2, 3, 4]]]
# 快捷的查看方式:数括号,括号是一一对应的,从最外层开始数
print(len(lst3))
列表的添加
列表的增加
-- append() 会把添加的值,默认加在末尾,一次只能添加一个元素
python
lst1 = [1, 2]
lst1.append("qsdd")
print(lst1)
# 错误示例:
lst1.append("qsdd", "wwwww") # list.append() takes exactly one argument (2 given)
列表的添加 -- insert(),通过索引来进行添加,添加的位置就是索引的位置,原有位置元素下标会依次加一
python
lst1 = [1, 2]
lst1.insert(0, "qsdd")
print(lst1)
合并列表 -- extend() 把元素一个个的放入到新的列表中
python
lst1 = [1, 2]
lst2 = [2, 3, 4, 5]
# print(lst1 + lst2) # 不建议在企业中,写法太低级,看起来像是加法运算
lst1.extend(lst2)
print(lst1)
注意:数字不能迭代,bool值也不能进行迭代
列表的删除
列表的删除 -- remove() 直接删除具体的值,如果存在多个的话,默认删除最前的那个
python
lst1 = [1, 2]
lst2 = [2, 3, 4, 5, 2]
# lst1.remove(2)
# print(lst1)
# 问题:通过remove删除lst2中的值2 ,那么会删除前面的还是后面的
lst2.remove(2)
print(lst2)
列表的删除 -- pop() 不带下标,默认删除最后一个,带下标删除具体的值
列表的修改
列表的修改 -- 列表的变量名称[下标] = 新值
python
lst3 = [100, 3.14, True, "qsdd", [1, 2, 3, 4]]
# 问题1:把 True 改为False?
# lst3[2] = False
# print(lst3) # [100, 3.14, False, 'qsdd', [1, 2, 3, 4]]
# 问题2:把 3 改为 10 ?
lst3[4][2] = 10
print(lst3) # [100, 3.14, True, 'qsdd', [1, 2, 10, 4]]
字典
字典的定义:
定义:具有键值对映射关系的一组无序的数据组合
键值对映射: key : value -- key是键名,value是这个键所对应的具体值,通过key来查询
关键字:dict
标识符:{}
无序:没有索引 一个字典里的key不会重复
key:是唯一的,并且不能修改的数据,通常我们用str类型
value: 可以是任何类型的数据,可以修改
定义一个空字典
python
dic1 = {}
定义一个有值的字典
python
dic2 = {
"name": "qsdd",
"age": 18,
"cls": 234,
"students_name": ["二师兄", "千寻", "听风、", "自由"]
}
字典的查询 -- 字典的变量名称["key"]
python
dic2 = {
"name": "qsdd",
"age": 18,
"cls": 234,
"students_name": ["二师兄", "千寻", "听风、", "自由"]
}
print(dic2["students_name"]) # ['二师兄', '千寻', '听风、', '自由']
字典的增删改操作:
字典的新增 -- 字典的变量名称["字典中不存在的key"] = 新值
python
dic2 = {
"name": "qsdd",
"age": 18,
"cls": 234,
"students_name": ["二师兄", "千寻", "听风、", "自由"]
}
dic2['addr'] = "湖南长沙"
print(dic2) # {'name': 'qsdd', 'age': 18, 'cls': 234, 'students_name': ['二师兄', '千寻', '听风、', '自由'], 'addr': '湖南长沙'}
字典的修改 -- 字典的变量名称["字典中存在的key"] = 新值
python
dic2 = {
"name": "qsdd",
"age": 18,
"cls": 234,
"students_name": ["二师兄", "千寻", "听风、", "自由"]
}
dic2['age'] = 20
print(dic2)
问题:把 自由 的值,改为 小玉 ?
python
dic2 = {
"name": "七夜老师",
"age": 18,
"cls": 234,
"students_name": ["二师兄", "千寻", "听风、", "自由"]
}
dic2["students_name"][3] = "小玉"
print(dic2)
字典的删除 -- pop() 不能为空,需要传入删除的key
python
dic2 = {
"name": "qsdd",
"age": 18,
"cls": 234,
"students_name": ["二师兄", "千寻", "听风、", "自由"]
}
dic2.pop("age")
print(dic2) # {'name': 'qsdd', 'cls': 234, 'students_name': ['二师兄', '千寻', '听风、', '自由']}
字典的删除 -- popitem() 从后往前删出
python
dic2 = {
"name": "qsdd",
"age": 18,
"cls": 234,
"students_name": ["二师兄", "千寻", "听风、", "自由"]
}
dic2.popitem()
print(dic2) # {'name': 'qsdd', 'age': 18, 'cls': 234}