摘要:

python基础一中介绍数据类型的时候有集合,所以这篇主要讲集合。

1,集合的定义

2,集合的功能

3,集合的方法

1,集合的定义

list1 = [1,4,5,7,3,6,7,9]
set1 = set(list1) set2 = {1,4,5,7,3,6,7,9}

  

2,集合的功能

2.1 去重

list1 = [1,4,5,7,3,6,7,9]
set1 = set(list1) 运行结果:{1, 3, 4, 5, 6, 7, 9} 可以发现集合具有去重的功能。

  

2.2 关系测试

关系测试的话主要涉及到都是集合的方法,比如子集、交集等,详见集合的方法。

3,集合的方法

3.1,交集

set1 = {1, 3, 4, 5, 6, 7, 9}

set2= set([2,6,0,7,66])

print(set1.intersection(set2))
或者
print(set1&set2)       运行结果:{6, 7}

  

 

3.2,并集

set1 = {1, 3, 4, 5, 6, 7, 9}

set2= set([2,6,0,7,66])
print(set1.union(set2)) 
或者
print(set1|set2)
      
      运行结果:{0, 1, 2, 3, 4, 5, 6, 7, 66, 9}

  

3.3,差集(在set1里面有的,set2里面没有的,同理也可以set2里面有的,set1里面没有的)

set1 = {1, 3, 4, 5, 6, 7, 9}

set2= set([2,6,0,7,66])
print(set1.difference(set2))
print(set2.difference(set1))
print(set1-set2)
print(set2-set1)

  

3.4,子集(以bool值返回)

set1 = {1, 3, 4, 5, 6, 7, 9}

set2= set([2,6,0,7,66])

print(set1.issubset(set2))

  

3.5,父集

set1 = {1, 3, 4, 5, 6, 7, 9}

set2= set([2,6,0,7,66])

print(set1.issuperset(set2))

  

3.6,对称差集(将对方都没有的都取出来,或者说是去取反向差集)

set1 = {1, 3, 4, 5, 6, 7, 9}

set2= set([2,6,0,7,66])
print (set1.symmetric_difference(set2)) print(set1^set2)

3.7,交集(以bool值返回)

set1 = set([1,2,3])
set2 = set([4,5,7])
print (set1.isdisjoint(set2))

  

3.8,集合其他方法

1,,集合添加元素

set1 = set([1,2,3])
set1.add(4)
print(set1)
set1.update([5,6,7])
print(set1)

  

2,删除集合的元素,如果不存在就会报错。

set1.remove(7)
print(set1)

  

3,随机删除元素

print (set1.pop())

  

4,删除元素,如果删除的元素不存在不会报错。

set1 = set([1,2,3,'a'])
set1.discard('b')
print(set1)

  

												

python基础一数据类型之集合的更多相关文章

  1. 第四节 Python基础之数据类型(集合)

    在学习本节之前,我们先对数据类型做一个补充,也就是数据类型的分类: 按照可变和不可变来分: 可变:列表,字典 不可变:数字,字符串,元组 按照访问顺序来分: 顺序访问:字符串,列表,元组 映射的方式访 ...

  2. Python基础之数据类型

    Python基础之数据类型 变量赋值 Python中的变量不需要声明,变量的赋值操作既是变量声明和定义的过程. 每个变量在内存中创建,都包括变量的标识,名称和数据这些信息. 每个变量在使用前都必须赋值 ...

  3. 第二章:python基础,数据类型

    """第二章:python基础,数据类型2.1 变量及身份运算补充2.2 二进制数2.3 字符编码每8位所占的空间位一个比特,这是计算机中最小的表示单位.每8个比特组成一 ...

  4. python基础一数据类型之字典

    摘要: python基础一数据类型之一字典,这篇主要讲字典. 1,定义字典 2,字典的基础知识 3,字典的方法 1,定义字典 1,定义1个空字典 dict1 = {} 2,定义字典 dict1 = d ...

  5. Java基础-引用数据类型之集合(Collection)

    Java基础-引用数据类型之集合(Collection) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.为什么出现集合类 面向对象语言对事物的体现都是以对象的形式,所以为了方便 ...

  6. python学习6—数据类型之集合与字符串格式化

    python学习6—数据类型之集合与字符串格式化 1. 使用id()可以查看一个变量的内存地址: name = 'alex' id(name) 2. 进制转换 十进制转换为二进制等: a = 10 # ...

  7. Python成长之路【第二篇】Python基础之数据类型

    阅读目录 简介 1 什么是数据? x=10,10是我们要存储的数据 2 为何数据要分不同的类型 数据是用来表示状态的,不同的状态就应该用不同的类型的数据去表示 3 数据类型 数字(整形,长整形,浮点型 ...

  8. python基础(二)----数据类型

    Python基础第二章 二进制 字符编码 基本数据类型-数字 基本数据类型-字符串 基本数据类型-列表 基本数据类型-元组 可变.不可变数据类型和hash 基本数据类型-字典 基本数据类型-集合 二进 ...

  9. python基础之字典、集合

    一.字典(dictionary) 作用:存多个值,key-value存取,取值速度快 定义:key必须是不可变类型,value可以是任意类型 字典是一个无序的,可以修改的,元素呈键值对的形式,以逗号分 ...

随机推荐

  1. How to set background image to a LinearLayout using Android-Universal-Image-Loader ? #594

    You can do it by 2 ways: use loadImage(...) and set layout background in listener (ImageLoadingListe ...

  2. 磁盘分区以及Linux目录挂载详解

    一.背景 一直以来,对于磁盘的分区以及Linux目录挂载的概念都不是很清晰,现在趁着春暖花开周末在家没事就研究了下它们,现在来分享我的理解. 二.概念详解 1.磁盘分区 磁盘分区是把物理的磁盘空间按照 ...

  3. vmrun 批量创建vmware虚拟机

    1 准备模板机 具体步骤如下: 1. 下载镜像安装系统 https://mirrors.aliyun.com/centos/7.5.1804/isos/x86_64/ 2. 安装完成配置好IP ,关闭 ...

  4. Spring总结 1.装配bean

    本随笔内容要点如下: 依赖注入 Spring装配bean的方式 条件化装配 一.依赖注入 我理解的依赖注入是这样的:所谓的依赖,就是对象所依赖的其他对象.Spring提供了一个bean容器,它负责创建 ...

  5. javascript 创建对象方式

    本文主要是对<JavaScript高级程序设计>第六章(面向对象的程序设计)的总结,书上的这章至少看了4遍是有的.该章主要讲对象的创建与继承.其中创建对象和继承方式至少6种,再加上一些方法 ...

  6. jQuery中的函数汇总1

    欢迎访问我的github:huanshen,有我的源码解析 1.each 跟for循环很像,但是更有用,如果你理解了就知道了. // 遍历一个数组或者对象 // obj 是需要遍历的数组或者对象 // ...

  7. laravel 数据验证

    laravel 数据验证 在保存数据之前进行数据验证 类需要继承 Controller 然后用  $this->validate( $request , ['title' => 'requ ...

  8. [转]TFS常用的命令行详解

    本文转自:http://blchen.com/tfs-common-commands/ 微软的TFS和Visual Studio整合的非常好,但是在开发过程中,很多时候只用GUI图形界面就会发现一些复 ...

  9. [转]Centos系统中查看文件和文件夹大小

    本文转自:https://blog.csdn.net/zgmu/article/details/52882868 当磁盘大小超过标准时会有报警提示,这时如果掌握df和du命令是非常明智的选择.df可以 ...

  10. .NET世界的包管理器——Nuget

    NugetServer 使用指南 为什么要使用Nuget 在我们的项目, 存在着一些公共Dll, 这些Dll被大量的项目所引用.同时这些公共dll也同时在进行版本升级, 由于缺乏版本管理,这些Dll会 ...