集合内置方法

用途:用于关系运算的集合体,由于集合内的元素无序且集合元素不可重复,因此集合可以去重,但是去重后的集合会打乱原来元素的顺序。

定义方式:{}内用逗号隔开多个元素,元素只能是不可变类型(整形、浮点型字符串),且有两个特点:

1、会删除重复的值

2、会打乱集合内的值

wenyi_girlfriend_set = {'fanping', 'zhuping', 'qiangge', 'changyi', 'muzhiguniang1', 'muzhiguniang1','nick'}
zhuping_jiyou_set = {'fanping', 'wenynyi', 'qiange', 'wuzhiguniang'}
print(wenyi_girlfriend_set)
{'fanping', 'nick', 'muzhiguniang1', 'changyi', 'qiangge', 'zhuping'}

自定义set方法

wenyi_freind_list = ['ruhua','suiyue','suiyue']
print(set(wenyi_freind_list))
# def set(wenyi_freind_list):
# s = set()
# for i in wenyi_freind_list:
# s.add(i)
# print(s)
{'suiyue', 'ruhua'}

常用操作和内置方法

长度len

print(len(wenyi_girlfriend_set))
6

成员运算 in 和 not in

print('fanping'in wenyi_girlfriend_set)
True

并集 内置=.union 快捷符号=“|” (两个集合的汇总,必考)

print(wenyi_girlfriend_set.union(zhuping_jiyou_set))
print(wenyi_girlfriend_set | (zhuping_jiyou_set))
{'fanping', 'nick', 'wuzhiguniang', 'muzhiguniang1', 'wenynyi', 'changyi', 'qiange', 'qiangge', 'zhuping'}
{'fanping', 'nick', 'wuzhiguniang', 'muzhiguniang1', 'wenynyi', 'changyi', 'qiange', 'qiangge', 'zhuping'}

交集 内置=intersection 快捷符号=“&” (连个集合的共有的值,必考)

print(wenyi_girlfriend_set.intersection(zhuping_jiyou_set))
print(wenyi_girlfriend_set & (zhuping_jiyou_set))
{'fanping'}
{'fanping'}

差集 内置=difference 快捷符号=“-” (前面集合减去后面集合所剩的值)

print(wenyi_girlfriend_set.difference(zhuping_jiyou_set))
print(wenyi_girlfriend_set - (zhuping_jiyou_set))
{'nick', 'muzhiguniang1', 'changyi', 'qiangge', 'zhuping'}
{'nick', 'muzhiguniang1', 'changyi', 'qiangge', 'zhuping'}

对称差集 内置=symmetric_difference 快捷符号“^”(等于两个集合的汇总再减去两个集合共有的值)

print(wenyi_girlfriend_set.symmetric_difference(zhuping_jiyou_set))
print(wenyi_girlfriend_set ^ (zhuping_jiyou_set))
{'zhuping', 'nick', 'wenynyi', 'muzhiguniang1', 'changyi', 'qiange', 'qiangge', 'wuzhiguniang'}
{'zhuping', 'nick', 'wenynyi', 'muzhiguniang1', 'changyi', 'qiange', 'qiangge', 'wuzhiguniang'}

==

print(wenyi_girlfriend_set == zhuping_jiyou_set)
False

父集 >、>= 、issuperset (A包含B,A>B,则为true,否则为false)

print(wenyi_girlfriend_set > zhuping_jiyou_set)
print(wenyi_girlfriend_set.issuperset(zhuping_jiyou_set))
False
False

子集 < 、<= 、issubset

print(wenyi_girlfriend_set < zhuping_jiyou_set)
print(wenyi_girlfriend_set.issubset(zhuping_jiyou_set))
False
False

add 添加

s={1,2,'a'}
s.add(3)
print(s)
{3, 1, 2, 'a'}

remove 移除

s.remove(2)
print(s)
{3, 1, 'a'}

difference_update (从S1这个集合中删除另一个集合S2的所有元素。)

s1 = {1,2,3,'a'}
s2 = {1,2,'a'}
print(s1.difference_update(s2))
print(s1)
None
{3}

isdisjoint (如果两个集合的交集为空,则返回True。)

print(s1.isdisjoint(s2))
True

存一个or多个值:多个值

有序or无序(有索引为有序,否则为无序):无序

可变or不可变:可变

Python-集合数据类型内置方法的更多相关文章

  1. python常用数据类型内置方法介绍

    熟练掌握python常用数据类型内置方法是每个初学者必须具备的内功. 下面介绍了python常用的集中数据类型及其方法,点开源代码,其中对主要方法都进行了中文注释. 一.整型 a = 100 a.xx ...

  2. python循环与基本数据类型内置方法

    今天又是充满希望的一天呢 一.python循环 1.wuile与else连用 当while没有被关键'break'主动结束的情况下 正常结束循环体代码之后会执行else的子代码 "" ...

  3. python中其他数据类型内置方法

    补充字符串数据类型内置方法 1.移除字符串首尾的指定字符可以选择方向1: s1 = '$$$jason$$$' print(s1.strip('$')) # jason print(s1.lstrip ...

  4. python字符串常用内置方法

    python字符串常用内置方法 定义: 字符串是一个有序的字符的集合,用与存储和表示基本的文本信息. python中引号中间包含的就是字符串. # s1='hello world' # s2=&quo ...

  5. day07-列表类型/元组类型/字典类型/集合类型内置方法

    目录 列表类型内置方法 元组类型内置方法 字典类型内置方法 集合类型内置方法 列表类型内置方法 用来存多个元素,[]内用逗号隔开任意数据类型的元素 1. list()强制类型转换 print(list ...

  6. day09-2 字典,集合的内置方法

    目录 字典的内置方法 作用 定义方式 方法 优先掌握 需要掌握 存储一个值or多个值 有序or无序 可变or不可变 集合的内置方法 作用 定义方式 方法 存储一个值or多个值 有序or无序 可变or不 ...

  7. while.for循环和基本数据类型内置方法

    while循环补充说明 流程控制之for循环 基本数据类型内置方法 内容详细 1.死循环 真正的死循环是一旦执行,Cpu的功耗会急速上升 知道系统采取紧急措施 所以 尽量不要让cpu长时间不断运算. ...

  8. python字符串处理内置方法一览表

    python字符串处理内置方法一览表   序号 方法及描述 1 capitalize()将字符串的第一个字符转换为大写 2 center(width, fillchar) 返回一个指定的宽度 widt ...

  9. python-字典数据类型内置方法

    字典数据类型内置方法(必考) 用途:存多个值,不通过索引取值,可以用关键字找到对应得值 定义方式:{}内以key:value的方式存储多个值,值与值之间用逗号隔开 lis = ['ruixing', ...

  10. Python反射和内置方法(双下方法)

    Python反射和内置方法(双下方法) 一.反射 什么是反射 反射的概念是由Smith在1982年首次提出的,主要是指程序可以访问.检测和修改它本身状态或行为的一种能力(自省).这一概念的提出很快引发 ...

随机推荐

  1. Codeforces Round #510 (Div. 2) A&B By cellur925

    第一次CF祭== 由于太菜了只做了前两题== 因为在第一题上耗费时间太多了,我还是太菜了==. A. Benches time limit per test 1 second memory limit ...

  2. ipset 学习总结

    用途:当机器受到网络攻击时,使用 iptables 封 IP,有时候可能会封禁成千上万个 IP,如果添加成千上万条规则, 在一台注重性能的服务器或者本身性能就很差的设备上就不在适用了.ipset 就是 ...

  3. Swift @objcMembers

    使用@objcMembers关键字,将类中的所有方法暴露给Objc (效果等同于为所有方法加上@objc). 示例代码: @objcMembers class MyController: UIView ...

  4. Java笔记-序列化的注意点

    1.使用serialVersionUID 在Eclipse中,如果一个类实现了Serializable接口,且没有给这个类设置一个serialVersionUID,就会有一个警告标志: The ser ...

  5. 关于C_Cpp的一些小结

    ## 某些函数的使用 1. printf / sprintf / fprintf printf:把格式字符串输出到标准输出(可重定向) sprintf:把格式字符串输出到指定字符串中,参数比print ...

  6. 基于Tcp协议的上传下载

    目录格式: 构建此目录就可随意使用! client端 import socket import sys import os import json import struct sk = socket. ...

  7. php,json数据传输(无刷新)

    废话不说直接上关键代码: js代码: <script language="javascript"> $(".login").live('click' ...

  8. Hacker的社交礼仪与自我修养【转】

    Hacker School是位于纽约的一所特殊的编程“学校”,他们的目标是帮助参与者变成“更好的程序员”,之所以说他们特殊是因为这所“学校”没有老师,没有考试,也不会颁发证书,他们信奉三人行必有我师, ...

  9. android开发学习 ------- Error:Failed to open zip file.

    我们用Android Studio   Sync Project项目的时候,会出现如下的错误: 解决方案: Project视图下, 这块 https 改为 http 就可以了.

  10. JUnit的好搭档-Hamcrest

    一.Hamcrest简介 Hamcrest是一个用于编写匹配器(matcher)对象的框架,允许以声明方式定义“匹配(match)”规则.它可以与JUnit框架配合使用,使断言可读更高,更加灵活(例如 ...