python基础学习10----集合
集合具有无序性,互异性
一.集合的建立
空集合
s=set()
s={}#这样默认为是一个空字典
集合内的元素是可哈希的即不可变的数据类型
s={1,2,3,4}
s=set([1,2,3,4])
s=set('python')
print(s)#{'h', 'y', 't', 'n', 'p', 'o'}
二.添加元素
s=set([1,2,3,4])
s.add(5)
print(s)#{1,2,3,4,5}
update可以添加多个元素
s.update([5,6])
print(s)#{1, 2, 3, 4, 5, 6}
s.update([7,8],{9,10})
print(s)#{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
三.删除元素
discard和remove都可以表示删除一个元素,但若集合中没有该元素,则使用remove会报错,discard不会
s={1,2,3,4}
s.remove(1)
print(s)#{2, 3, 4}
s.discard(2)
print(s)#{3, 4}
s.discard(5)
s.remove(5)#这句会报错
pop
s={1,2,3,4}
a=s.pop()#随机删除一个元素并将其作为返回值
print(a)
clear
s.clear()#清空集合
print(s)#set()空集合
四.不可变集合frozenset
s=frozenset(1,2,3,4)#不能进行增加或删除等操作
五.集合之间的关系
s1=set([1,2,3,4,5])
s2=set([4,5,6,7,8])
交集
s3=s1&s2
print(s3)#{4,5}
s3=s1.intersection(s2)
print(s3)#{4,5}
并集
s3=s1|s2
print(s3)#{1, 2, 3, 4, 5, 6, 7, 8}
s3=s1.union(s2)
print(s3)#{1, 2, 3, 4, 5, 6, 7, 8}
差集
#属于s1但不属于s2
s3=s1-s2
print(s3)#{1, 2, 3}
s3=s1.difference(s2)
print(s3)#{1, 2, 3}
对称差
#除去s1和s2中相同的元素
s3=s1^s2
print(s3)#{1, 2, 3, 6, 7, 8}
s3=s1.symmetric_difference(s2)
print(s3)#{1, 2, 3, 6, 7, 8}
子集
s1={1,2,3,4}
s2={3,4,5,6}
s3={2,3,4}
print(s2<s1)#False
print(s3<s1)#True
print(s3.issubset(s1))#True
超集
s1={1,2,3,4}
s2={3,4,5,6}
s3={2,3,4}
print(s1>s2)#False
print(s1>s3)#True
print(s1.issuperset(s3))#True
python基础学习10----集合的更多相关文章
- python基础学习10
python基础学习 内容概要 文件内光标的移动 文件数据修改 函数简介 函数语法结构 内容详情 文件内光标的移动 with open(r'路径','r',encoding='utf8') as f: ...
- python基础学习1-SET 集合
# -*- coding:utf-8 -*- set集合 无序不重复的序列 se = {"a","b","c"} #创建SET集合 prin ...
- Python基础学习之集合
集合是一个无序.不重复的数据集合,它的主要作用如下: 去重:把一个列表变成集合,就可以去除重复的内容 关系测试:测试两组数据之间的交集.并集.差集等关系 集合常用的操作: #创建一个数值集合 s=se ...
- python基础学习之集合set
.集合:set 特点:无序,不可重复(自动去重),可更改,可以与元组.列表互相转换 格式:s = {'x','y','z'} 转换:(转回用set) s = {'x','y','z'} ...
- Python基础学习五
Python基础学习五 迭代 for x in 变量: 其中变量可以是字符串.列表.字典.集合. 当迭代字典时,通过字典的内置函数value()可以迭代出值:通过字典的内置函数items()可以迭代出 ...
- python基础学习7
python基础学习7 内容概要 字符串的内置方法 字符串的内置方法(补充) 列表的内置方法 可变类型与不可变类型 队列与堆栈 内容详情 字符串的内置方法 # 1.strip 移除字符串首尾的指定字符 ...
- Day1 Python基础学习
一.编程语言分类 1.简介 机器语言:站在计算机的角度,说计算机能听懂的语言,那就是直接用二进制编程,直接操作硬件 汇编语言:站在计算机的角度,简写的英文标识符取代二进制去编写程序,本质仍然是直接操作 ...
- 0003.5-20180422-自动化第四章-python基础学习笔记--脚本
0003.5-20180422-自动化第四章-python基础学习笔记--脚本 1-shopping """ v = [ {"name": " ...
- Day1 Python基础学习——概述、基本数据类型、流程控制
一.Python基础学习 一.编程语言分类 1.简介 机器语言:站在计算机的角度,说计算机能听懂的语言,那就是直接用二进制编程,直接操作硬件 汇编语言:站在计算机的角度,简写的英文标识符取代二进制去编 ...
- Python 基础学习 总结篇
Python 基础学习总结 先附上所有的章节: Python学习(一)安装.环境配置及IDE推荐 Python学习(二)Python 简介 Python学习(三)流程控制 Python学习(四)数据结 ...
随机推荐
- 译自如何将Spring Cloud应用程序从Spring Boot 1.2迁移到1.3
前言 笔者第三个Spring Cloud(版本为Spring Boot 1.2)类项目升级最新版本时遇到不少问题,本文内容是作者翻译Spring Cloud官网一位国外友人文章产生. 原文地址: Mi ...
- 【详解】JNI(Java Native Interface)(一)
前言: 一提到JNI,多数编程者会下意识地感受到一种无法言喻的恐惧.它给人的第一感觉就是"难",因为它不是单纯地在JVM环境内操作Java代码,而是跳出虚拟机与其他编程语言进行交互 ...
- linux firefox 快捷方式
.输入:cd /usr/share/applications .输入:vi firefox.desktop 在vi里面输入以下内容,然后保存并退出: [Desktop Entry] Name=Fire ...
- winDBG排错小记
去年底,公司一个上线了近一年的系统逐渐出现访问缓慢,操作超时的问题.本人使用winDBG工具对抓下来的内存映象进行了诊断,虽最后没有查出什么原因,但在过程中也学到了不少东西,现记录如下 一. “Fai ...
- (转)request.getSession()几种获取情况之间的差异
一.三种情况 HttpSession session = request.getSession(); HttpSession session = request.getSession(true); H ...
- Dicom图像解析
医疗图像解析 Dicom 后缀: .dcm..DCM Dicom中规定的坐标系是以人坐标系为绝对坐标系的,规定X轴正向指向病人的左侧,Y轴正向指向病人的背部,Z轴正向指向病人的头部.但是,坐标点的位置 ...
- 百度前端学院task33源码及总结——听指令的小方块
任务描述 如图,实现一个类似棋盘的格子空间,每个格子用两个数字可以定位,一个红正方形的DOM在这个空间内,正方形中的蓝色边表示这是他的正面,有一个input输入框 在输入框中允许输入如下指令,按下按钮 ...
- Python面向对象基础一
公司可能过一两个月就要从深圳搬到东莞松山湖,项目组的现在有的在转Java或其他语言的,问我们要不要转java+hoodap+spark方向,我还是先不转,毕竟之前是从ios转回C#,这现在在转其他的那 ...
- 2017.12.21-JQuery
作业:密码加强验证 <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> & ...
- winform窗体 小程序【登录窗体】【恶搞程序】
登录窗体 using System; using System.Collections.Generic; using System.Data.SqlClient; using System.Linq; ...