高级数据类型: 列表 元组 字典
1.列表总结: 列表的函数调用,增,删,改,查,排序代码
# 在列表中添加元素
name2 = [1,2,3]
name = []
# 添加元素到列表
name.insert(0, "你好") # insert 插入元素
name.append(1) # append在列表末尾添加元素
name.append(2)
name.extend(name2) # extend 把其他列表元素添加到列表末尾
# 列表中的删除元素
del name[0] # del 删除指定的索引
name.remove(1) # remove 删除指定的值
name.pop() # pop删除末尾的值
name.pop(1) # pop[] 使用索引删除指定的值
a=name.pop() # 不指定值 就会有记录
name.clear() # clear 清空列表
print(name)
print(a)
# sort()只能针对英文 数字 进行排序 不支持字符串
# sorted()临时排序 下一次运行会变为原来的序列
# 永久排序,从小到大
stu_name = [ 66, 8, 5, 4, 3]
stu_name.sort()
print(stu_name)
# 临时排序,下次还原
print(sorted(stu_name))
print(stu_name)
# 反向排序 从大到小
stu_name.sort(reverse=True)
print(stu_name)
# 反向打印 从后往前打印列表元素
stu_name.reverse()
print(stu_name)
# 查看列表长度
print(len(stu_name))
# 查看列表中元素出现的次数
print(stu_name.count(3))
# 查看列表中的索引 index(元素名)
print(stu_name.index(3))
# 结合列表所学习的知识与input进行相结合
number = [1, 2, 3, 6, 4, 5, 8]
# 定义一个list_name空列表
list_name = []
# 使用input和列表的增,删,改,查
input_name = input("请输入你要添加的元素:") # 字符串类型的元素
list_name.append(input_name) # 使用用户输入往列表添加元素
# print(list_name) # 打印元素
# 插入元素
input_int = int(input("请输入你要添加的数字:"))
list_name.insert(1, input_int)
# print(list_name)
# 删除元素
del list_name[1]
# print(list_name)
# 添加元素
list_name.append(1)
list_name.append(2)
list_name.append("王五")
list_name.append("张三")
list_name.append(10)
# 删除元素
list_name.remove("张三") # 根据指定的元素删除
list_name.pop() # 删除列表末尾的元素
a = list_name.pop(3) # 根据索引删除列表的元素,并且pop()会记录删除的元素,
print(a) # 只需定义一个变量接收返回的删除元素
# 修改元素
list_name[1] = 1 # 修改列表中的元素 只需根据索引赋值即可
# 把其他列表的值传递给这个列表中
list_name.extend(number)
# 统计出现的次数
c = list_name.count(2)
print(c)
print(list_name)
# 查看列表的长度
print(len(list_name))
# 查看元素的索引
print(list_name.index(8))
print(list_name[9])
del关键字
1.使用del关键字(delete)同样可以删除列表中的元素
2.del关键字本质是用来将一个变量从内存中删除的
3.如果使用del关键字将变量从内存中删除,后续的代码就不能再使用这个变量了
For循环遍历列表 :
# for循环遍历列表
number = [14, 20, 30, 40, 10, 65, 70]
for i in number: # 使用for循环遍历整个列表,定义一个变量i接收列表的元素
print(i) # 打印i得到列表中所有的元素
# 打印结果
# 14
# 20
# 30
# 40
# 10
# 65
# 70
2.元组总结:
# 元组
s = ("张三", 18, 172, "60kg")
n = s.count(18) # 查询元组元素出现的次数
print(n)
m = s.index(18) # 查询元组里面元素的索引
print(m)
print(len(s)) # 查看元组的长度
for a in s:
print(a, end="\t")
print(s, type(s))
a = list(s) # 把元组类型转换成列表类型,定义一个变量接收
print(a, type(a))
b = tuple(a) # 把列表转换成元组类型,定义一个变量接收
print(b, type(b))
循环遍历:
1.遍历 就是 从头到尾 依次 从 列表 中获取数据
2.在 循环体内部 针对 每一个元素,执行相同的操作
3.在 Python 中为了提高列表的遍历效率,专门提供的 迭代 iteration 遍历使用 for 就能够实现迭代遍历
for循环遍历格式
for name in name_list:
循环内部针对列表元素进行操作
print(name)
print(‘其它操作’)
元组与列表的相似处
Tuple(元组)与列表类似,不同之处在于元组的 元素不能修改
元组 表示多个元素组成的序列
元组 在 Python 开发中,有特定的应用场景
1.用于存储 一串 信息,数据 之间使用 , 分隔
2.元组用 () 定义 # 列表[ ]
3.元组的 索引 从 0开始
4.索引 就是数据在 元组 中的位置编号
5.元组和列表之间的转换
使用 list 函数可以把元组转换成列表
list(元组)
使用 tuple 函数可以把列表转换成元组
tuple(列表)
# 定义元组
number = (12, "张三", 15, 18, 52, 63)
# 统计出现的次数
a = number.count(12)
print("出现的次数是:%d" % a)
# 查看元素的索引
b = number.index(15)
print("元素的索引是:%d" % b)
# 查看元组的长度
c = len(number)
print("元组的长度是:%d" % c)
# 将元组转换成列表
d = list(number)
print(d, type(d))
print(number)
for循环遍历元组
number = (12, "张三", 15, 18, 52, 63)
for i in number:
print(i)
字典的总结
****字典的**键**不能出现两个,如果出现两个会被**后面出现的值覆盖,值可以重复出现**
dictionary(字典) 是 除列表以外 Python 之中 最灵活 的数据类型
字典同样可以用来 存储多个数据,通常用于存储 描述一个 物体 的相关信息****
和列表的区别
列表 是 有序 的对象集合
字典 是 无序 的对象集合
字典的定义:
字典用{}来定义
字典使用 键值对 存储数据,键值对之间使用 逗号 分隔
键 key 是索引
值 value 是数据
键 和 值 之间使用 : 分隔
键必须是唯一的
值 可以取任何数据类型,但 键 只能使用 字符串、数字或 元组
字典的定义
dic_name = {"name": "小明", "age": 18, "身高": 175}
print(dic_name)
字典的清空方法
dic_name = {"name": "小明" , "age": 18, "height": 175}
dic_name.clear() # 列表的清空使用clear()
print(dic_name)
字典的取值方法
dic_name = {"name": "小明", "age": 18, "height": 175}
a = dic_name.get("name") # 使用get对字典取值,取值参数是键的名,没有键名会返回一个None
b = dic_name["age"] # 也可以通过中括号进行取值,但是如果没有这个键名,就会报错
print(a)
print(b)
字典的键和值,获得列表,多个元组
dic_name = {"name": "小明", "age": 18, "height": 175}
a = dic_name.items() # 获得键和值组成的多个元组
print(a)
字典的删除
pop可以通过键的名称,删掉一个键值对
返回值是键所对应的值
dic_name = {"name": "小明", "age": 18, "height": 175}
a = dic_name.pop("name")
print(a)
print(dic_name)
keys()方法返回的是键名称所组成的列表
dic_name = {“name”: “小明”, “age”: 18, “height”: 175}
a = dic_name.keys()
print(a)
values() 方法返回的是值所组成的列表
dic_name = {"name": "小明", "age": 18, "height": 175}
a = dic_name.values()
print(a)
update(另一个字典),主要是合并。 字典1.update(字典2)
dic_name = {"name": "小明", "age": 18, "height": 175}
dic_name2={"name2": "小明", "age2": 18, "height2": 175}
dic_name.update(dic_name2)
print(dic_name)
for 循环内部使用的 key 的变量
in 字典
拿到所有的键的名称
dic_name = {“name”: “小明”, “age”: 18, “height”: 175}
for i in dic_name:
print(i)
拿到键和值 后面加个方法 items()
dic_name = {"name": "小明", "age": 18, "height": 175}
for i in dic_name.items():
print(i)
第二种拿到键和值的方式,for循环后面定义两个变量接收
dic_name = {“name”: “小明”, “age”: 18, “height”: 175}
for k,i in dic_name.items():
print(k, i)