集合内置方法

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

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

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. 51Nod 1013 3的幂的和(快速幂+逆元)

    #include <iostream> #include <algorithm> #include <string> #define MOD 1000000007 ...

  2. web.xml中classpath*:与classpath:的区别

    classpath对应src目录,该目录下的文件会在编译后被存放到WEB-INF文件夹下的classes目录. classpath:只会到你的class路径中查找配置文件,对于多个同名的配置文件,只会 ...

  3. Jmeter之一个请求获取上一个请求的参数

    刚开始有这个需求,网上都是一些使用正则表达式的例子,苦于自己看不好正式的表达式,且响应结果稍微变一下,自己就不会写了,于是谷歌上各种搜,也阅读官网上文档,后来发现一个好的插件 Json path Ex ...

  4. 解题报告:poj 3259 Wormholes(入门spfa判断负环)

    Description While exploring his many farms, Farmer John has discovered a number of amazing wormholes ...

  5. 题解报告:hdu1201(18岁生日)

    2018-02-24题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1201 Problem Description Gardon的18岁生日就要到了,他 ...

  6. select选择框中,model传的值并非是页面上的值,而是另一个值

    对于编程来说,money和rebate代表的是金额优惠和折扣优惠,采用money或rebate便于数据存储.但是页面显示给用户的时候是金额优惠和折扣优惠,并不是显示编程中所存储数据.所以选择的mode ...

  7. [转]List of Visual Studio Project Type GUIDs

    本文转自:http://www.codeproject.com/Reference/720512/List-of-Visual-Studio-Project-Type-GUIDs There isn' ...

  8. 最优雅退出 Android 应用程序的 6 种方式

    一.容器式 建立一个全局容器,把所有的Activity存储起来,退出时循环遍历finish所有Activity import java.util.ArrayList; import java.util ...

  9. Android学习笔记(十六) ContentProvider

    1.相关概念 ContentProvider:不同应用程序之间进行数据交换的标准API:程序“暴露”数据的方法. ContentResolver:一个程序访问另一个程序被“暴露”的数据的方法. Uri ...

  10. JSP和Servlet性能优化经验谈

    你的J2EE应用是不是运行的很慢?它们能不能承受住不断上升的访问量?本文讲述了开发高性能.高弹性的JSP页面和Servlet的性能优化技术.其意思是建立尽可能快的并能适应数量增长的用户及其请求.在本文 ...