Python元组、集合、字典

简介: Python元组、集合、字典

总有一天你要一个人在暗夜中,向那座桥走过去


文章目录


一、元组


字符串、元组、列表的总结


二、集合


1.定义空集合


2.创建集合


(1)直接创建


(2)set函数


3.列表、元组、字符串、字典的去重


4.向集合中添加元素


(1)add函数


(2)update函数


5.集合元素的删除


(1)remove函数


(2)pop函数


(3)discard函数


6.集合的交集和并集


三、字典


1.创建字典


(1)直接用{},也是最常用的方法


(2)dict函数


2.字典的增、删、改、取


(1)增加


(2)删除


(3)修改


(4)获取


3.字典的各种操作函数


(1)get函数——过去字典的某个键对应的值。并返回


(2)keys函数——以列表的形式返回字典中的所有键


(3)items函数——以列表的形式返回字典中所有键值对


(4)values函数——以列表的形式返回字典中的所有值


(5)clear函数


(6)copy函数——创建字典副本


(7)fromkeys函数——创建一个新字典


(8)pop函数——从字典中删除指定键,并返回这个键的对应值


(9)popitem函数——删除字典中最后一项,并返回它的键和值


(10)setdefault函数——用于设置键的默认值


(11)update函数——将字典2的内容更新至字典1


四、成员/标识符检测与判断


1.成员检测(检测成员是否在序列中)


2.判断两个对象和是否相同


大家好,我是纪宁


今天要介绍的是python的元组、集合、字典,这是Python基础目前的学习进度


一起加油




一、元组

 元组与列表是类似的,写在()里(列表写在[])里,元素中间用逗号隔开,且元素类型可以不同


 元组在性质上与列表不同的是,元组里面的元素不能改变


 但是,如果元组里面有列表,列表里面的值可以改变


字符串、元组、列表的总结

元祖、字符串、列表中可以共同使用的常用函数


len() 返回字符串/元组/列表 的长度


min() 返回字符串/元组/列表 里面的最小值(如果是字符串,则逐个比较ASCII码)


max() 返回字符串/元组/列表 里面的最小值(如果是字符串,则逐个比较ASCII码)


二、集合

 集合就是像这种的  { , , , }


 元素之间用逗号隔开、元素可以为任何类型


 集合是无序的,且集合里的元素是唯一的


1.定义空集合

使用方法:d=set()


不能直接用{},这样会被认为是空字典


2.创建集合

(1)直接创建

变量名={元素,元素,元素,元素,......}元素可以为元组、字符串、数字等


(2)set函数

变量名=set(元素),只能有一个元素(只能是元组、列表或者字符串等等)


当元素是字符串时,放在集合里就将字符串里面的字符逐个取出来


但是当字符串放在列表或者元组里面时,则不会将字符串给拆开


如 d=set("纪宁余微");print(d)   #字符串单独放


>>{'纪', '宁', '余', '微'}


   d=set([1,2,3,"纪宁余微"]);print(d)      #字符串在列表里


>>{1, 2, 3, '纪宁余微'}


3.列表、元组、字符串、字典的去重

将列表、元组、字符串、字典用set函数放入集合中,会自动去重


这里就用列表来举例子


如d=set([1,2,3,3,2,1,33,33,4,6]);print(d)


>>{1, 2, 3, 4, 33, 6}   #列表里的元素是无序的


4.向集合中添加元素

(1)add函数

用add函数往集合中添加数字/字符串/元组等,直接将元素加在集合末尾


使用方法:d.add(元素)


注意事项:如果添加的元素集合中已经有了,则不会显示(集合中不会出现重复元素)


(2)update函数

update函数可以将集合b合并于集合a中


使用方法:a.update(b)


如a={"纪宁","余微"};b={1,2,3}

a.update(b);print(a)  #对a操作,将b并入a


>>{1, 2, 3, '纪宁', '余微'}


5.集合元素的删除

(1)remove函数

使用方法:a.remove(要删除的元素)


注意事项:如果集合里有这个元素,就直接删除,如果没有的话,就报错


(2)pop函数

使用方法:a.pop()


作用:在a集合中随机删除一个元素


注意事项:如果集合里有元素,就直接删除,如果没有元素,就报错


(3)discard函数

使用方法:a.discard(要删除的元素)


作用:在a中删除要删除的元素


注意事项:如果集合里有元素,就直接删除,如果没有元素,不做任何处理


6.集合的交集和并集

&交集:s3=s1&s2——得到集合s1和集合s2的交集,并存入s3中


| 并集:s3=s1|s2——得到集合s1和集合s2的并集,并存入s3中


三、字典

 字典是一种映射类型,一种键对应一种值,且键是不可变的,所以字典键的类型必须是一种不可变类型


字典的键不能重复


 如果字典中有多个相同的键,只保留最后一个键的键和值(覆盖前面的)


 创建空字典 {}


1.创建字典

(1)直接用{},也是最常用的方法

创建方法:字典名={  键 : 值  ,  键 : 值  ,  键 : 值}


如d={

"姓名":"纪宁",

"年龄":18

}


键和值必须得一一对应


(2)dict函数

使用方法:dict(元组+列表)——将列表写在元组里


如d=dict((["名字","年龄"],["纪宁",18]))

print(d)


>>{'名字': '年龄', '纪宁': 18}


2.字典的增、删、改、取

(1)增加

使用方法:d[键名]=值(对应要增加的键和值)


如d={

"姓名":"纪宁",

"年龄":18

}


d["技能"]="剑法";print(d)


>>{'姓名': '纪宁', '年龄': 18, '技能': '剑法'}


(2)删除

使用del关键字


使用方法:del 字典名[键名]


如d='{姓名': '纪宁', '年龄': 18, '技能': '剑法'}


del d["纪宁"];print(d)


>>{'姓名': '纪宁', '年龄': 18}


(3)修改

使用方法:d[键名]=要修改的值


(4)获取

使用方法:d[键名]


获取这个键对应的值


3.字典的各种操作函数

(1)get函数——过去字典的某个键对应的值。并返回

使用方法:字典名.get(键名)


如d={

"姓名":"纪宁",

"年龄":18

}


r=d.get("名字");print(r)


>>纪宁


如果这个键在字典中不存在,则返回None


也可以让不存在的键返回一个默认值,但是原来的d里面的值不改变


如r=d.get("门派","天苍宫");print(r)


>>天苍宫


(2)keys函数——以列表的形式返回字典中的所有键

使用方法:字典名.keys()


如d={

"姓名":"纪宁",

"年龄":18

}

z=d.keys();print(z)


>>dict_keys(['姓名', '年龄'])


(3)items函数——以列表的形式返回字典中所有键值对

使用方法:字典名.items()


如d={

"姓名":"纪宁",

"年龄":18

}

z=d.items();print(z)


>>dict_items([('姓名', '纪宁'), ('年龄', 18)])


(4)values函数——以列表的形式返回字典中的所有值

使用方法:字典名.values()


如d={

"姓名":"纪宁",

"年龄":18

}


z=d.values();print(z)


>>dict_values(['纪宁', 18])


(5)clear函数

用于字典清空


使用方法:字典名.clear()


如d={

"姓名":"纪宁",

"年龄":18

}

d.clear();print(d)


>>{}


(6)copy函数——创建字典副本

字典副本与原字典互不影响(一个改变不影响另一个)


使用方法:字典名.copy()


如d={

"姓名":"纪宁",

"年龄":18

}

c=d.copy();print(c)


>>{'姓名': '纪宁', '年龄': 18}


(7)fromkeys函数——创建一个新字典

使用方法:字典名.fromkeys(参数1,参数2)


参数1是一个不可变序列,作为多个键;参数2是任意数据类型,作为每个键的值


所以fromkeys函数创建的字典的值都是相同的


(8)pop函数——从字典中删除指定键,并返回这个键的对应值

使用方法:字典名.pop(键名)


如d={

"姓名":"纪宁",

"年龄":18

}


c=d.pop("姓名");print(c)


>>纪宁


(9)popitem函数——删除字典中最后一项,并返回它的键和值

使用方法:字典名.popitem()


如d={

"姓名":"纪宁",

"年龄":18

}


c=d.popitem();print(d);print(c)


>> {'姓名': '纪宁'}

    ('年龄', 18)


(10)setdefault函数——用于设置键的默认值

使用方法:字典名.setfault(键,值)


如d={

"姓名":"纪宁",

"年龄":18

}


d.setdefault("门派","黑白学宫");print(d)


>>{'姓名': '纪宁', '年龄': 18, '门派': '黑白学宫'}


(11)update函数——将字典2的内容更新至字典1

使用方法:字典1名.update(字典2名)


若字典2的键在字典1中已存在,则对字典1对应键进行修改(改为字典2的值)


若字典2的键在字典1中没有,则对字典1进行添加;并保留1中2没有的键和值


如d_1={

"姓名":"纪宁",

"年龄":18,

"门派":"黑白学宫",

"师傅":"菩提老祖"

}

d_2={

"姓名":"余微",

"年龄":19,

"门派":"黑白学宫",

"道侣":"纪宁"

}

d_1.update(d_2);print(d_1)


>>{'姓名': '余微', '年龄': 19, '门派': '黑白学宫', '师傅': '菩提老祖', '道侣': '纪宁'}


四、成员/标识符检测与判断

1.成员检测(检测成员是否在序列中)

in / not in


in:如果对象在序列中,就返回True,否则就返回False


not  in:如果对象不在序列中,就返回True,否则就返回False


序列如果是字典的话,判断的对象是键


使用方法:对象   in/not in   序列


如:1 in (1,2,3,4)  #1在(1,2,3,4)这个元组序列里,就返回True


2.判断两个对象和是否相同

is / is not


is:判断对象是否相同,相同就返回True,否则就返回False


is not:判断对象是否不相同,不相同就返回True,否则就返回False


注意:这里的对象是不可变类型(如果对象是列表或者字典等可变类型,则必定判断为不相同)


如a=(1,2,3)

b=(1,2,3)

z=a is b


print(z)


>>True




博主写了好长时间,如果你能给博主一个免费三连鼓励一下博主的话,那么你真是 泰裤辣

相关文章
|
2月前
|
安全 网络安全 文件存储
思科设备巡检命令Python脚本大集合
【10月更文挑战第18天】
96 1
思科设备巡检命令Python脚本大集合
|
26天前
|
XML JSON API
如何使用Python将字典转换为XML
本文介绍了如何使用Python中的`xml.etree.ElementTree`库将字典数据结构转换为XML格式。通过定义递归函数处理字典到XML元素的转换,生成符合标准的XML文档,适用于与旧系统交互或需支持复杂文档结构的场景。示例代码展示了将一个简单字典转换为XML的具体实现过程。
17 1
WK
|
2月前
|
Python
python元组与列表的转换
在 Python 中,元组(tuple)和列表(list)是两种常用的数据结构,它们之间可以相互转换
WK
78 9
WK
|
2月前
|
Python
Python创建元组
必须在这个元素后面加上一个逗号,否则 Python 会把它当作一个普通的带圆括号的表达式而不是元组
WK
24 4
WK
|
2月前
|
数据处理 Python
Python空元组作用有哪些
空元组在Python中可能不像包含元素的元组那样直接用于数据处理,但它们仍然可以在多种情境下发挥重要作用
WK
30 2
|
2月前
|
存储 自然语言处理 数据处理
使用Python计算多个集合的交集详解
使用Python计算多个集合的交集详解
70 1
|
2月前
|
存储 Java Serverless
【Python】字典
【Python】字典
39 1
|
2月前
|
存储 安全 Serverless
Python学习四:流程控制语句(if-else、while、for),高级数据类型(字符串、列表、元组、字典)的操作
这篇文章主要介绍了Python中的流程控制语句(包括if-else、while、for循环)和高级数据类型(字符串、列表、元组、字典)的操作。
42 0
|
2月前
|
存储 自然语言处理 数据库
Python字典操作实现文章敏感词检索
Python字典操作实现文章敏感词检索
34 0
|
2月前
|
存储 JSON 数据处理
分析、总结Python使用列表、元组、字典的场景
分析、总结Python使用列表、元组、字典的场景
34 0