列表
- list(列表)是python中使用最频繁的数据类型,在其他语言中通常叫做数组
- 专门用于存储一串信息
- 列表用[]定义,数据之间使用,分隔
- 列表的索引从0开始
索引就是数据在列表中的位置编号,索引又称为下标
注意:从列表中取值时,如果超出索引范围,程序会报错
name_list=["zhang","li","wang"]
print(name_list[0])
程序会输出“zhang”,在上面的代码中只可以输出name_list[0],name_list[1],name_list[2]
列表的常用操作
# -*- coding: utf-8 -*-
name_list=["zhang","li","wang"]
#1.取值和取索引(列表索引不能超出范围)
print(name_list[0])
#知道数据的内容,想确定数据在列表中的位置
print(name_list.index("li"))
#2.修改
name_list[1]="zhao"
#列表指定的索引超出范围,程序会报错
#3.增加
#append方法可以向列表的末尾增加数据
name_list.append("lily")
#insert方法可以在列表的指定索引位置插入数据
name_list.insert(1,"wawa")
#extend 方法可以在列表后增加一个列表
temp_list=["haha","xixi"]
name_list.extend(temp_list)
#4.删除
#remove 方法可以从列表中删除指定数据
name_list.remove("zhang")
#pop默认可以把最后一个删除
name_list.pop()
#pop方法可以指定删除的索引
name_list.pop(3)
#clesr方法可以清空列表
name_list.clear()
print(name_list)
del方法:
name_list=["zhang","li","wang"]
#使用 del 关键字删除列表元素
del name_list[1]
#del 关键字本质上是用来将一个变量从内存中删除的
#在日常开发中 要从列表删除数据,建议使用列表提供的方法
name="ming"
del name
#注意:如果使用del关键字符变量从内存中删除
#后续的代码就不能再使用这个变量了
#print(name)
print(name_list)
列表元素的统计
len 函数可以统计列表中元素的总数
name_list=["zhang","wang","li"]
#len 函数可以统计列表中元素的总数
list_len=len(name_list)
print("列表中包含%d个元素" %list_len)
count 方法可以统计列表中某一个数据出现的词数
name_list=["zhang","wang","li","zhang"]
#count 方法可以统计列表中某一个数据出现的词数
count=name_list.count("zhang")
print("zhang出现了%d次" %count)
列表的排序
name_list=["zhang","wang","li"]
num_list=[6,2,4]
#升序
name_list.sort()
num_list.sort()
print(name_list)
print(num_list)
#降序
name_list.sort(reverse=True)
num_list.sort(reverse=True)
print(name_list)
print(num_list)
#逆序
name_list.reverse()
num_list.reverse()
print(name_list)
print(num_list)
循环遍历
遍历就是从头到尾从列表中获取数据,在循环体内部针对每一个元素执行相同的操作
name_list=["zhang","li","wang"]
#使用迭代遍历列表
#顺序从列表中依次获取数据
#in后面加列表名
for my_name in name_list:
print("我的名字叫%s" %my_name )
列表的应用场景
列表可以存储不同类型的数据
元组
元组与列表相似,不同之处在于元组的元素不能修改
- 元组表示多个元素组成的序列,通常保存不通过类型的数据
- 元组在python中,有特定的应用场景
- 用于存储一串信息,数据之间使用,分隔
- 元组用()定义
- 元组的索引从0开始
info_tuple=("zhangsan",18,1.75)
如果想创建一个只有一个元素的元组,需要以这种形式
single_tuple=(5,)
元组的常用操作
info_tuple=("zhangsan",18,1.75)
#1.取值和取索引
print(info_tuple[1])
print(info_tuple.index("zhangsan"))
#2.统计计数
print(info_tuple.count("zhangsan"))
#统计元组中包含的元素个数
print(len(info_tuple))
循环遍历
for my_info in info_tuple:
#使用格式字符串拼接 my_info这个变量不方便
#因为元素的类型不同
print(my_info)
应用场景
尽管使用for in 遍历元组,但是在开发中,更多的应用场景是:
函数的参数和返回值,一个函数可以接受任意多个参数,或者一次返回多个数据
格式字符串,格式化字符串后面的()本质上就是一个元祖
让列表不被修改,可以把它转换成元组
元组和格式化字符串
info_tuple=("xiaoming",18,1.75)
#格式化字符串后面的()本质上就是元组
print("%s 年龄是%d 身高是%.2f" %info_tuple)
info_str="%s 年龄是%d 身高是%.2f" %info_tuple
print(info_str)
元组合列表之间的转换
使用list函数可以把元组转化成列表
info_tuple2=list(info_tuple)
print(type(info_tuple2))
使用tuple可以把列表转化成元组
info_tuple2=tuple(info_tuple)
print(type(info_tuple2))
字典
- 字典是除列表以外python之中最灵活的数据类型
- 字典可以用来存储多个数据
- 通常用于存储描述一个物体的相关信息
- 字典用{}定义
- 字典是用键值对存储数据,键值对之间使用,分隔
键key是索引
之value是数据
键和值之间使用:分隔
键必须是唯一的
值可以取任何的数据类型,但键只能使用字符串,数字或元组
和列表的关系:
列表是有序的对象集合,字典是无序的对象集合
字典的定义
xiaoming={"name":"小明",
"age":18}
print(xiaoming)
字典的常用操作
xiaoming={"name":"小明",
"age":18}
#1.取值
#在取值的时候,如果指定key不存在,程序会报错
print(xiaoming["name"])
#2.增加/修改
#如果key不存在,增加
#如果key存在,修改
xiaoming["age"]=17
xiaoming["weight"]=60
#删除
xiaoming.pop("name")
print(xiaoming)
xiaoming={"name":"小明",
"age":18}
#1.统计键值对数量
print(len(xiaoming))
#2.合并字典
#如果输入相同的键值对会覆盖
temp={"height":1.75}
xiaoming.update(temp)
print(xiaoming)
#3.清空字典
xiaoming.clear()
print(xiaoming)
循环遍历
在字典中,循环遍历用的很少
xiaohong={"name":"小红",
"qq":"123564"}
#变量k是在每一次循环中,获取到的键值对的key
for k in xiaohong:
print("%s - %s" %(k,xiaohong[k]))
字典和列表组合
是有序的
#使用多个键值对 ,存储一个物体的相关信息,将多个字典放在一个列表中
card=[
{"name":"张三",
"qq":"123"},
{"name":"李四",
"qq":"1234"}]
for card_info in card:
print(card_info)