python集合函数 python 集合的方法

Python的集合介绍和列表类似,集合也是一个数据集合,其也不要求元素的类型一致 。但是集合有下面两个特点:
?集合内元素唯一 。如不可以用1、2、1、1组成集合 , 因为其包含重复的1 。
?集合是无序的,添加元素时不能指定位置,删除元素时也不能通过指定位置,只能通过指定值 。当然也不能通过位置来定位某个元素 。
1、创建集合
我们可以从列表创建集合,将列表中的元素都加入到集合中,如果有重复的元素就仅保留一个 。
a = set([1, 1, 3])
print(a)#输出结果:set([1, 3])
也可以从元组、字典和其他集合构建集合 。比如:
a = set((0, 1, 2, 3, 3, 2))
使用的是字典的键来构建集合,字典的值没有被使用到,比如:
a = set({1:10, 2:20, 3:30})
从字符串构建集合,其每个字符都成为集合的一个元素,比如:
a = set("abcdefabc")
输出结果:a={'c', 'e', 'f', 'b', 'd', 'a'}
另外一个集合构建集合 , 比如:
a = set([1, 2, 3])
b = set(a)输出结果:b={1, 2, 3}
当然也可以构造一个空的集合,使用的方法是set() 。空集合没有任何元素,比如:
a = set()
1.添加元——add(值)
该函数只能添加一个元素 。
如果添加的元素已经在集合中存在,那么不会发生任何变化 。
2.扔掉元素——discard(值)
该函数删除集合中指定的值对应的元素 。
如果指定值在集合中不存在,则不做任何操作 。
3.删除指定值——remove(值)
该函数和discard()的不同之处在于,如果指定的值在集合中不存在,会抛出异常 。
4.清空所有元素——clear()
该函数扔掉所有的元素 。执行完该函数后,该集合将变成一个空的集合 。
a.clear()
5.删除第一个元素——pop()
如果集合中有元素,则返回值为删除掉的元素的值 。
如果集合为空,则抛出异常 。
6.得到差集——difference(集合对象)
该函数返回一个新的集合,该集合包含所有属于a而不属于b的元素 , 如图所示 。该操作不会改变原始集合a或者b的内容 。
7.差集操作符(-)
该操作符和difference()类似,返回一个新的集合 , 该集合包含所有属于a而不属于b的元素 。该操作不会改变原始输入集合a或者b的内容 。
8.从集合中删除另一个集合中存在的元素——difference_update(集合对象)
该函数和difference()的不同是操作数a会被修改,而且没有返回值 。
9.得到两个集合的交集——intersection(集合)
该函数返回所有的同时属于集合a和集合b的元素组成的集合,即返回的是一个集合 , 该集合的所有元素都同时属于集合a和b,如图所示 。输入集合a和b在该过程中没有发生任何改变 。
10.交集操作符()
该操作符和intersection()的效果是一样的 。
11.删除集合a中所有不属于集合b的元素——intersection_update(集合)
该函数也是求交集,与intersection()不同的是其修改原始输入集合,并且没有返回值 。这也是为何该接口函数后面带有update字样 , 因为其更新了原来的输入集合 。
12.是否存在交集——isdisjoint()
该函数判断是否存在这样的元素 , 其同时属于集合a和集合b 。如果存在这样的元素,返回False;否则返回True 。
13.并集——union(集合a,集合b)
该函数返回一个新的集合,该集合的元素要么属于输入集合a要么属于集合b 。该操作不修改作为输入的两个集合a和b 。如图表示该函数返回的集合的内容 。
14.并集操作符(|)
该操作符和union()的效果是一样的 。其返回一个并集,并且不修改输入集合的内容 。
15.添加属于b而不属于a的元素——update()
该函数在集合a中添加属于b而不属于a的所有元素 。该操作和union()不同的是,其修改了输入集合a,并且没有返回值 。
16.外集——symmetric_difference()
外集就是由只属于集合a或者只属于集合b的元素组成的集合,如图所示 。该操作返回一个新的集合,并且不修改原来的输入集合a和b 。
17.外集操作符(^)
该操作符和symmetric_difference()的效果是一样的,也是返回一个新的集合,并且不会修改输入的集合a或者b 。
18.a和b的并集减去a和b的交集——symmetric_difference_update()
该函数和symmetric_difference()的区别是,其修改了集合a的值,并且没有返回值 。
19.是指定集合的子集吗——issubset()
a是b的子集就是说集合a的所有元素都属于集合b 。
如果a等于b,那么a和b互为子集 。
20.是指定集合的超集吗——issuperset()
a是b的超集合就是说集合b中的所有元素都属于集合a 。
如果a是b的超集,那么b就是a的子集 。
如果a等于b,那么它们互为子集 , 同时也互为超集 。
python集合和函数变量名={元素 , 元素,,,}
nums={11,24,45,96,28}
nums.add(42)
print(nums)
nums={11,24,45,96,28}
nums2=["anfly","tom"]
nums.update(nums2)
print(nums)
1)nums={11,24,45,96,28}[没有该数字报错]
nums.remove(24)
print(nums)
2)nums={11,24,45,96,28}[随机删]
nums.pop()
print(nums)
3)nums={11,24,45,96,28} [没有该数字不会报错]
nums.discard(24)
print(nums)
交集:(存在相同元素)
set1={"anfly","tom","haha"}
set2={"anfly","susala"}
set3=set1set2
print(set3)
并集:(得到全部集合中全部的元素)
set1={1,2,3,4}
set2={3,4,5,6}
new_set=set1|set2
print(new_set)
运算符 (* in)
内置函数 (len max min del)
列:set1 = {"1","2","3"}
print(min(set1))
def函数名():
执行语句
函数名()
列:
defhello():
print("hello word")
hello()
2.函数参数:
defadd2num():
a=11
b=22
c=a b
print(c)
add2num()
3.位置参数:
deffun(a,b):
print("a:",a)
print("b:",b)
fun(2,3)
4.关键字参数:
deffun(a,b):
print("a:",a)
print("b:",b)
fun(a=2,b=3)[第一个‘a’可以直接写数字,也可以展示;第二个以及之后‘b’不能直接写数字,要写‘b=3’这种格式]
5.缺省参数
def printinfo(name,age=20):
print("name:",name)
print("age:",age)
printinfo(name="anfly")[展示都能展示出来]
6.不定长参数
1).*args[展示是元组]
defprintinfo(*args):
print("args:",args)
printinfo(100,200,300,400)
2)**args[展示是k.v格式]
def printinfo(**kwargs):
print("kwargs:",kwargs)
printinfo(a=100,b=200,c=300,d=400)
7.参数位置顺序
def sun(a,*args,b=22,**kwargs):
print("a:",a)==10
print("args:",args)==(200,300)
print("b:",b)==2
print("kwargs:",kwargs)=={‘m’:3,'n':4}
sun(100,200,300,b=2,m=3,n=4)
8.函数返回值
def fan(a,b):
return a b
print(fan(1,2))#3
9.匿名函数(lambda函数也叫匿名函数 , 即函数没有具体的名称)
案例一:
sum=lambda a,b:a b
print(sum(1,2))#3
案例二:
sum=lambda a,b:100
print(sum(1,2))#100
1.局部变量
def jv():
a=3
print(a)
def jv1():
a=99
print(a)
jv()#3
jv1()#99
2.全局变量
def jv():
print(a)
def jv1():
a=99
print(a)
jv()#全局变量
jv1()#99
3.局部变量升成全局变量
def jv():
a=3
global b
b="我也是全局变量"
print(a)
def jv1():
a=99
print(a)
print(b)
jv()#3
jv1()#99 #“我也是全局变量”
Python 简明教程 ---13,Python 集合目录
前几节我们已经介绍python集合函数了Python 中python集合函数的 列表list python集合函数 , 元组tuple和字典dict,本节来介绍Python 中的最后一种数据结构—— 集合set。
Python 中的 set与dict很像,唯一的不同是, dict中保存的是 键值对 ,而 set中只保存 键 , 没有 值。
Python集合 有如下特点python集合函数:
Python 集合的声明有两种方式python集合函数:
创建 空集合 时,只能用 set(),而不能用 {} :
创建 非空集合 时,可以用 set() , 也可以用 {} :
由于集合中的元素是唯一的,如果初始化时的 可迭代 数据中有重复的元素,则会自动删去重复的元素:
使用 len()函数可以查看集合中元素的个数:
由于Python 集合中的元素的是无序的,所以可不能使用 下标的方式来访问集合中的单个元素 。
我们可以使用 for 循环来遍历集合中的所有元素:
我们可以对两个集合进行如下运算:
交集与并集
in 运算
使用 dir(set)查看集合支持的所有方法:
下面一一介绍这些 非魔法方法 , 共17 个 。
1. add方法
由于集合中的元素是唯一的,向集合中添加元素时有两种情况:
示例:
2. remove方法
示例:
3. discard方法
示例:
4. pop方法
示例:
5. union方法
示例:
6. update方法
示例:
7. clear方法
示例:
8. copy方法
示例:
9. difference方法
示例:
10. difference_update方法
示例:
11. intersection方法
示例:
12. intersection_update方法
示例:
13. isdisjoint方法
示例:
14. issubset方法
示例:
15. issuperset方法
示例:
16. symmetric_difference方法
示例:
17. symmetric_difference_update方法
示例:
(完 。)
推荐阅读:
Python 简明教程 --- 8,Python 字符串函数
Python 简明教程 --- 9,Python 编码
Python 简明教程 ---10,Python 列表
Python 简明教程 ---11 , Python 元组
Python 简明教程 ---12 , Python 字典
python数据类型(集合)1.集合(set)是一个无序不重复元素python集合函数的序列(意思是有重复的会自动删除,每次打印元素的位置不一定)
2.基本功能是进行成员关系测试和删除重复元素
3.可以使用大括号 { } 或者 set() 函数创建集合python集合函数,注意python集合函数:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典
4.因为set存储的是无序集合,所以我们没法通过索引来访问 。访问 set中的某个元素实际上就是判断一个元素是否在set中 。
1.创建集合
s=set()#创建一个空集合
s1={1,2,3,'a','python'}
2.删除重复的元素
集合是一个无序不重复元素的序列(意思是有重复的会自动删除,每次打印元素的位置不一定)
3.成员关系测试(检测某个成员是否在集合中)
案例:从终端输入5位数,以空格隔开,把这5位数存入列表中,剔除重复的数据,打印出来
#提示,列表转集合,集合转列表
a=input("请输入5位数字:")
mylist=a.split()
print(mylist)
b=set(mylist)
c=list(b)
print(c)
4.集合常用操作
1.添加元素
2.删除元素
3.删除整个集合
4.获取集合的长度
5.不支持改元素
集合操作-添加元素
格式:
集合.add(元素)
格式:
集合.update(元素)
区别:
add不能添加列表,update可以
update是将字符串中的拆分成字符进行追加
add,是当做整体追加在集合中
#案例:从终端输入一个数字就加入集合中,然后打印,又输入一个数字,然后打印,直到输入-1,退出输入
#然后打印最终的集合
ms=set()
while 1:
a=int(input("请输入一个数字:"))
if a==-1:
break
ms.add(a)
print(ms)
print(ms)
#案例:从终端输入一个字符串就加入集合中,然后打印,又输入一个字符串,然后打印,直到输入q,退出输入
#然后打印最终的集合,字符串要分开存储,如输入hello,存储的列表是{'h','e','l','0'}
ms=set()
while 1:
a=input("请输入一个字符串:")
if a=='q':
break
ms.update(a)
print(ms)
print(ms)
集合操作-删除元素及删除整个集合
格式:
集合.remove(元素)# 元素如果不存在会引发KeyError
集合.discard(元素)# 元素如果不存在不发生任何事
集合.pop()# 集合元素是字符串类型时删除随机元素 。集合元素是其python集合函数他数据类型时,删除左边第一个元素
del 集合名 #删除整个集合
#案例:有集合{1,2,3,'hello','world'},删除全部字符串,然后最左边第一个元素
a={1,2,3,'hello','world'}
a.discard("hello")
a.discard("world")
a.pop()
print(a)
集合操作-获取集合的长度
格式:
len(集合名)
#案例:有集合{1,2,3,4,'hello','a'},保留1个元素,其他的删除,假如元素个数不确定
s={1,2,3,4,'hello','a'}
for iin range(len(s)-1):
s.pop()
print(s)
集合的集运算
集合的交集,并集,差集,对称差集的运算
{1,2,3,4}交集{4,5,6,7} --4交集()
{1,2,3,4}并集{4,5,6,7} -1,2,3,4,5,6,7并集(|)
{1,2,3,4}差集{4,5,6,7} -1,2,3差集(-)
{1,2,3,4}对称差集{4,5,6,7}-1,2,3,5,6,7 4同时出现在两个集合中,不选它 对称差集(^)
#案例:使用花括号和set创建各一个集合,然后对集合进行交、并、差、对称差运算
s={1,2,3,4,5,6}
s1=set([6,7,8,9,10])
print(ss1)
print(s|s1)
print(s-s1)
print(s^s1)
python--set(集合)一、创建集合
创建非空集合:集合中set括号中需要的参数的数据类型有:序列(包括字符串、列表、元组),字典可以转为集合,注意数值类型不能作为集合的参数,如int类型 。
二、添加元素
add() 方法是将要添加的元素作为一个整体添加到集合中
update() 方法是把要传入的元素拆分成单个字符,存于集合中 , 并去掉重复的
三、删除元素
集合的删除操作使用的方法跟列表是一样的,使用的也是 remove 方法,只能单个删除
四、遍历集合
五、集合与字符串、列表、元组互转,集合转字典
六、查找元素并删除
函数原型: a.discard(b)
参数说明:a为一个set类型的变量;b表示要查找并删除的元素
函数作用:在集合setVar中查找element元素,如果存在则删除;如果没找到,则什么也不做 。该函数没有返回值
七、pop用法
函数原型: set1.pop()删除并返回集合set1中的第一个元素,如果为空引发KeyError错误
八、clear、copy和len的用法
clear方法用于清空集合中的所有元素
copy方法用于集合拷贝
len跟求序列的长度的函数len()是一样的,返回的是集合中有多少个元素
九、求集合的交集、并集、差集和difference的用法
求集合的 交集 使用的符号是 “”
求集合的 并集 用的是符号 “|”
求集合的 差集 使用的符号是减号 “-”
difference等价于集合的差集 ,查看两个集合的不同之处 。这种不同指的是集合s1相对于集合s2,不同的地方,也就是所有在集合s1中,而不再集合s2中的的元素组成的新集合
十、运算符判断集合间关系和issuperset、issubset的用法
集合可以使用大于()、小于()、大于等于(=)、小于等于(=)、等于(==)、不等于(!=)来判断某个集合是否完全包含于另一个集合 , 也可以使用子父集判断函数 。
issuperset集合st1是否是集合st2的父集
issubset集合st1是否是集合st2的子集
十一、不可变集合frozenset的用法
frozenset该集合中的内容是不可改变的,其他功能及操作跟可变集合set一样
Python中创建集合的方法有哪些呢?集合分为两种:可变集合(set)和不可变集合(frozenset),现在学习的是可变集合 。
在Python中,有关于集合的操作主要有:集合的创建;集合的添加和删除;集合的交、并和差集运算 。
今天先来学习如何创建集合 。
集合的创建有两种方法:直接赋值法和set()函数法 。
1、直接赋值法
和Python的其它序列一样,采用直接赋值法就可以直接创建一个集合 , 具体语法格式如下:
setname = {“element1”,“element2”,“element3”,……,“elementn”,}
从格式上看,和其它的序列创建方法基本一样,就是集合名setname直接使用赋值运算符等号“=”赋值 , 等号后面的元素内容使用英文半角的大括号“{ }”括起来 , 各个元素之间依然使用英文半角的逗号“,”分隔 。
这里虽然和字典一样使用大括号“{ }”,但是只要记住字典的元素是由键值对组成的(详见前第62节内容),就完全可以区分所创建的是字典还是集合了 。
【python集合函数 python 集合的方法】关于python集合函数和python 集合的方法的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息 , 记得收藏关注本站 。

    推荐阅读