列表:由一系列按照特定顺序排列元素组成的集合
格式:[元素a,元素b]
关键字:list,注意:list不能用于命名
特点:
- 可修改有序的
- 存在空列表
- 元素之间使用逗号隔开,使用[]括起来
- 什么元素都可已放进列表,整数,浮点数,;列表,元组,字符串都可以
以下是列表的代码及输出运行结果
list_msg=[100,112.45,'python','java',{'dict_key':'dict_value'},[2,5,'hdjhiaf'],(78,'hajhjfa','C#')]
print(list_msg)
1.列表的取值格式:列表名[索引值]
2.列表是有序的,因此列表的取值可根据列表的下标(索引值)来获取,列表的下标从0开始
list_msg=[100,112.45,'python','java',{'dict_key':'dict_value'},[2,5,'hdjhiaf'],(78,'hajhjfa','C#')]
a=list_msg[4]
print(a)
3.列表的切片:
格式:列表名[元素头的位置:元素尾的位置+1:步长],与字符串的切片类似,其默认步长为1,代码与运行结果如下:
list_msg = [100, 112.45, 'python', 'java', {'dict_key': 'dict_value'}, [2, 5, 'hdjhiaf'], (78, 'hajhjfa', 'C#')]
b=list_msg[2:5:1]#存在步长
c=list_msg[2:5]#不取步长
d=list_msg[2:6:2]#步长为2
print(b)
print(c)
print(d)
list_int=[100,[102,105,107],200,[205,209,[303,404]]]
列表的嵌套取值方法: 在索引值后面直接加上嵌套元素的下标即可,取值方式代码及运行结果如下:
list_int=[100,[102,105,107],200,[205,209,[303,404]]]
list_value=list_int[3][2][1]
print(list_value)
1.列表元素的添加、删除、修改
代码及运行结果如下:
list_msg=['i love python','java','web','ios',3,78,9,32,'yezi']
list_fla=[1.23,4.56,7.89,0.56,3]
list_msg.append('python')#在列表的最后面增加函数,每次只能增加一个
print(list_msg)
list_msg.insert(4,'C')#根据索引在列表中根据索引插入元素
print(list_msg)
list_msg.pop()#删除列表最末的元素
print(list_msg)
list_msg.pop(4)#根据索引删除元素
print(list_msg)
list_msg.remove('java')#根据列表值删除元素
print(list_msg)
del list_msg[3]#del函数,删除列表元素
print(list_msg)
2.拓展
代码及运行结果如下:
list_msg=['i love python','java','web','ios',3,78,9,32,'yezi','love','java']
list_fla=[1.23,4.56,7.89,0.56,3]
list_msg.reverse()#倒序
print(list_msg)
list_fla.sort()#同一数据类型的元素排序
print(list_fla)
print(list_msg.count('java'))#统计java的个数
print(list_msg.index(78))#写出78的位置索引
list_msg.extend(list_fla)#两个列表合并
print(list_msg)
list_fla.clear()#清空列表元素
print(list_fla)
【注意】
1.列表的内置函数, 除了count和index之外,没有返回值,所以列表的增、删、排序、倒序等操作不能直接赋值给变量或者直接使用print打印,如果打印出现的结果为None
2.sort只能列表中的同一种数据类型进行排序,如果数据类型不一致,就不能使用sort
元组的关键字:tuple
特点: 1.由()括起来的集合
2.无序不可变
3.可存在空的元组
4.如果元组中只有一个数据,请加一个逗号,否则会变成非元组
5.什么类型的数据都可以放 整数,浮点数,字符串,元组都可以
6.取单个元组 元组名[索引值] 索引从0开始,去下标即可
7.元组中,元素之间都使用逗号隔开
8.重点:元组中的至不能进行修改,即元组不支持增删改
元组的访问,切片和嵌套取值格式与列表一致,可参考列表,代码及运行结果如下所示:
tuple_int=(1.43,[4,6,7],{"dict_key":"dict_value"},("dkqakdf",1.5),"fskfgv")
print(tuple_int[3])#取值
print(tuple_int[::2])#切片,不输入数值,默认正无穷和负无穷
print(tuple_int[2:4])#切片,无步长
print(tuple_int[-2][1])#嵌套取值
1.统计函数 元组名.count()
2.索引函数 元组名.index()
tuple_int=(1.43,[4,6,7],{"dict_key":"dict_value"},("dkqakdf",1.5),"fskfgv",7)
print(tuple_int.index(1.43)) #1.43的索引值
print(tuple_int.count(7))#元组中7的个数
1.字典 dict{} 关键字:dict (关键字,不可用于命名 ) 符号:花括号 {}
代码及运行结果如下
dict_msg={}#空字典
print(type(dict_msg))
dict_msg={'class':'NET1101',7:8,(55,88):{"name":"yezi"}}
print(dict_msg)
代码及运行结果如下:
dict_msg = {'class': 'NET1101', 7: 8, (55, 88): {"name": "yezi"},"grade": [80, 90, 100, 200]}
print(dict_msg)
print(dict_msg["class"]) # 字典的取值,根据key取值
print(dict_msg[(55, 88)]["name"]) # 字典的嵌套取值,根据key来全套
print(dict_msg["grade"][2])#获取字典中嵌套列表的值,使用字典的key取值value,然后使用列表的索引取值
print(dict_msg.keys())# 获取所有的key值,返回数据类型为元组
print(dict_msg.values())# 获取所有的value值,返回数据类型为元组
print(dict_msg.items()) # 获取所有的键值对。返回数据类型为元组
示例代码如下:
dict_msg = {'class': 'NET1101', 'class': 8, (55, 88): {"name": "yezi"},"grade": [80, 90, 100, 200]}
print(dict_msg)
1.新增和修改
格式:字典名[key]=value 如果key存在则为修改,如果key不存在则为新增
dict_msg={'class':'NET1101',7:8,(55,88):{"name":"yezi"}}
print(dict_msg)
dict_msg['class']='java1102'#修改clsss的值
print(dict_msg)
dict_msg['code']=100#新增字典的值
print(dict_msg)
代码及运行结果如下;
dict_msg={'class':'NET1101',7:8,(55,88):{"name":"yezi"},"code":100}
dict_msg.pop('class')#删除指定的值
print(dict_msg)
del dict_msg[7] #del方法,删除指定的值
dict_msg.popitem()#随机删除
print(dict_msg)
dict_msg.clear()#清空
print(dict_msg)