一、字典(Dict)
1、字典定义规则
格式:{key键:value值} 即{key1:value,key2:value,,} 说明:key是唯一的,值是任意的类型
dict={} print(dict,type(dict)) 输出结果:{} <class 'dict'>
dict={'name':'翠花','age':18} print(dict,type(dict)) 输出结果:{'name': '翠花', 'age': 18} <class 'dict'>
2、字典访问数据
a.通过键名访问
dict={'name':'翠花','age':18} print(dict['name'],dict['age']) 输出结果:翠花 18
b.通过get方式
dict={'name':'翠花','age':18} print(dict.get('name')) 输出结果:翠花
3、字典添加数据
a.添加不存在的键名,直接输入值
dict={'name':'翠花','age':18}
dict['sex']='妖'
print(dict)
4、字典修改数据
a.修改已存在的键名,直接修改值
dict1={'name':'翠花','age':18}
dict1['name']='二狗'
print(dict1)
输出结果:{'name': '二狗', 'age': 18}
b.修改多个值
dict1={'name':'翠花','age':18}
dict2={'name':'翠花2','age':18,'sex':'女','height':'1.98'}
dict1.update(dict2)
print(dict1)
输出结果:{'name': '翠花2', 'age': 18, 'sex': '女', 'height': '1.98'}
5、字典删除数据
a.pop(键删除)
dict={'name':'翠花2','age':18,'sex':'女','height':'1.98'}
dict.pop('name')
print(dict)
输出结果:{'age': 18, 'sex': '女', 'height': '1.98'}
b.popitem()删除最后一个
dict={'name':'翠花2','age':18,'sex':'女','height':'1.98'}
dict.popitem()
print(dict)
输出结果:{'name': '翠花2', 'age': 18, 'sex': '女'}
c.del[键删除]
dict={'name':'翠花2','age':18,'sex':'女','height':'1.98'}
del dict['name']
print(dict)
输出结果:{'age': 18, 'sex': '女', 'height': '1.98'}
6、字典获取数据
a.获取所有的键 keys
dict={'name':'翠花2','age':18,'sex':'女','height':'1.98'}
print(dict.keys())
输出结果:dict_keys(['name', 'age', 'sex', 'height'])
b.获取所有的值 values
dict={'name':'翠花2','age':18,'sex':'女','height':'1.98'}
print(dict.values())
输出结果:dict_values(['翠花2', 18, '女', '1.98'])
c.获取所有的键值 items
dict={'name':'翠花2','age':18,'sex':'女','height':'1.98'}
print(dict.items())
输出结果:dict_items([('name', '翠花2'), ('age', 18), ('sex', '女'), ('height', '1.98')])
d.获取所有的键值 for循环
dict={'name':'翠花2','age':18,'sex':'女','height':'1.98'}
for i,j in dict.items():
print(i,j)
输出结果:
name 翠花2
age 18
sex 女
height 1.98
7、字典创建数据
a.通过fromkeys方式创建
list1=['name','age','sex']
dict1={}
dict2=dict1.fromkeys(list1,'hello')
print(dict2)
等同于
list1=['name','age','sex']
dict2=dict.fromkeys(list1,'hello')
print(dict2)
输出结果: {'name': 'hello', 'age': 'hello', 'sex': 'hello'}
二、列表(List)
1、列表定义规则
[]进行标识,可以放任意数据类型(数字、字符串、元组、字典、列表、集合和bool值(True|flase))
list=[1,'6',(1,2,3),{'name':'翠花','age':18},[1,'6',False,(2,1,'3')],{1,2,3},False]
print(list[0:],type(list))
输出结果:[1, '6', (1, 2, 3), {'name': '翠花', 'age': 18}, [1, '6', False, (2, 1, '3')], {1, 2, 3}, False] <class 'list'>
2、列表访问数据
a.支持切片
左闭右开(0开始切片) 举例:list1=[1,'6',False,(2,1,'3')]
b.去头去尾
print(list[1:-1]) 输出结果:['6', False]
c.取单个数据
print(list[1]) 6
d.取多个数据
print(list1[1:3]) ['6', False]
print(list1[1:-1]) ['6', False]
print(list[-3:-1]) ['6', False]
3、列表添加数据
a.append()往末尾添加数据
list=[1,'6',False,(2,1,'3')] list.append('9999') print(list1) 输出结果:[1, '6', False, (2, 1, '3'), '9999']
b.insert()指定位置添加数据
list=[1,'6',False,(2,1,'3')] list.insert(1,'www') print(list) 输出结果:[1, 'www', '6', False, (2, 1, '3')]
c.extend()往末尾添加数据
list=[1,'6',False,(2,1,'3')] list.extend('9999') print(list1) 输出结果:[1, '6', False, (2, 1, '3'), '9', '9', '9', '9']
d.append()和extend()的区别
append直接插入对象,extend拆分对象插入
4、列表删除数据
a.pop删除
<1>通过索引删除,并且删除会返回删除的数据
list=[1,'6',False,(2,1,'3')] print(list.pop()) 输出结果:(2, 1, '3')
<2>pop是可以不填参数,默认删除最后一个元素
list=[1,'6',False,(2,1,'3')] list.pop() print(list) 输出结果:[1, '6', False]
b.remove删除
<1>通过元素删除,不会返回删除的数据
list=[1,'6',False,(2,1,'3')] print(list.remove('6')) 输出结果:None
<2>remove()里面一定要填数据,删除添的数据
list=[1,'6',False,(2,1,'3')] list.remove('6'). print(list) 输出结果:[1, False, (2, 1, '3')]
c.del删除
<1>支持切片删除,删除一个元素
list=[1,'6',False,(2,1,'3')] del list[1] print(list) 输出结果:[1, False, (2, 1, '3')]
<2>支持切片删除,删除多个元素
list=[1,'6',False,(2,1,'3')] del list[1:3] print(list) 输出结果:[1, (2, 1, '3')]
<3>支持切片删除,删除整个元素
list=[1,'6',False,(2,1,'3')] del list1[::-1] print(list) 输出结果:[]
5、列表修改数据
a.找到元素即可修改
list=[1,'2','55'] list[1]='www' print(list) 输出结果:[1, 'www', '55']
b.升序&降序&翻转
升序:
<1> list=[1,5,7,9,6,10] list.sort() print(list) 输出结果:[1, 5, 6, 7, 9, 10]
<2> list=[1,5,7,9,6,10] list.sort(reverse=False) print(list) 输出结果:[1, 5, 6, 7, 9, 10]
翻转:
<1> <list=[1,5,7,9,6,10] list.reverse() print(list)> 输出结果:[10, 6, 9, 7, 5, 1]
<2> list=[1,5,7,9,6,10] print(list[::-1]) 输出结果:[10, 6, 9, 7, 5, 1]
降序:
list=[1,5,7,9,6,10] list.sort(reverse=True) print(list) 输出结果:[10, 9, 7, 6, 5, 1]
6、列表统计重复元素
a.返回一个list列表中出现次数最多的元素
list=['a','c','g','f','a'] print(list.count('a')) 输出结果:2
7、列表复制元素
list=['a','b','c'] print(list*2) 输出结果:['a', 'b', 'c', 'a', 'b', 'c']
三、集合(Set)
1、集合定义规则
{},set()函数进行标识,特点:集合无序,没有重复
2、集合创建数据
第一种方式:{}的形式创建集合数据
set={1,2,3} print(set,type(set)) 输出结果:{1, 2, 3} <class 'set'>
第二种方式:set()函数的形式创建集合数据
set=set((1,2,3)) print(set,type(set)) 输出结果:{1, 2, 3} <class 'set'>
若创建空的集合[验证结果:创建空的集合,只能用set()函数]
{}的形式创建空集合:set={} print(set,type(set)) 输出结果:{} <class 'dict'>
set()函数的形式创建空集合:set=set() print(set,type(set)) 输出结果:set() <class 'set'>
3、集合特性说明
a.集合:无序的
set={'不','你好','hello','大哥'} print(set)
输出结果:{'你好', 'hello', '大哥', '不'} {'hello', '大哥', '你好', '不'} {'大哥', '你好', '不', 'hello'}
b.集合:没有重复的
set={1,2,3,4,4} print(set) 输出结果:{1, 2, 3, 4}
4、集合访问数据
由于集合是无序的,所以集合无法对元素进行访问
5、集合添加数据
set={'不','你好','hello','大哥'}
set.add('时间')
print(set)
输出结果:{'hello', '你好', '不', '时间', '大哥'} {'你好', '时间', 'hello', '不', '大哥'} {'hello', '时间', '大哥', '你好', '不'}
6、集合删除数据
a.pop()任意删除
set={'不','你好','hello','大哥'} set.pop() print(set)
输出结果:{'大哥', '你好', '不'} {'不', 'hello', '你好'} {'你好', '不', '大哥'}
b.remove()删除元素
set={'不','你好','hello','大哥'} set.remove('你好') print(set)
输出结果:{'不', '大哥', 'hello'} {'hello', '大哥', '不'} {'大哥', 'hello', '不'}
c.discard(指定删除)
set={'不','你好','hello','大哥'} set.discard('110') print(set)
输出结果:{'hello', '你好', '不', '大哥'} {'hello', '大哥', '不', '你好'} {'不', '大哥', '你好', 'hello'} 不会报错的
7、集合的交集|并集|补集|差集
a.交集 取重复的
setA={1,2,3,4,5} setB={5,6,7,8,9} print(setA&setB)
输出结果:{5}
b.并集 去重
setA={1,2,3,4,5} setB={5,6,7,8,9} print(setA|setB)
输出结果:{1, 2, 3, 4, 5, 6, 7, 8, 9}
c.补集 取a值中的所有元素和b值不重复的地方
setA={1,2,3,4,5} setB={5,6,7,8,9} print(setA-setB)
输出结果:{1, 2, 3, 4}
d.差集 不取重复的
setA={1,2,3,4,5} setB={5,6,7,8,9} print(setA^setB)
输出结果:{1, 2, 3, 4, 6, 7, 8, 9}
数据类型的转换(tuple list)
元组转为列表:
tup1=(1,'er') print(list(tup1),type(list(tup1)))
输出结果:[1, 'er'] <class 'list'>
列表转为元组:
list1=[1,'2'] print(tuple(list1),type(tuple(list1)))
输出结果:(1, '2') <class 'tuple'>
数据类型的转换(dict string)
字典转成字符串:
dict1={'name':'qiushui','age':18} print(str(dict1),type(str(dict1)))
输出结果:{'name': 'qiushui', 'age': 18} <class 'str'>
字符串转为字典:
dict1="{'name':'qiushui','age':18}" print(eval(dict1),type(eval(dict1)))
输出结果:{'name': 'qiushui', 'age': 18} <class 'dict'>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现