Python之路 day2 集合的基本操作
#!/usr/bin/env python
# -*- coding:utf-8 -*-
#Author:ersa
'''
#集合是无序的
集合的关系测试,
增加,删除,查找等操作
'''
#列表去重 ==》转集合自动去重
list_1 = [1,3,5,7,9,11,2,4]
list_2 = [2,4,6,8,10] print(list_1,list_2) #列表转集合
list_1 = set(list_1)
list_2 = set(list_2) print("关系测试".center(70,'='))
#两个集合的交集
print( list_1.intersection(list_2) ) #并集
print( list_1.union(list_2) ) #差集==》我有你没有
print(list_1.difference(list_2)) #子集
list_3 = set([1,3,5])
print(list_3.issubset(list_1))
print(list_1.issuperset(list_3)) #对称差集==》两个集合中都没有
print(list_1.symmetric_difference(list_2)) #没有交集则返回true
list_4 = set([2,4,6])
print(list_3.isdisjoint(list_4)) print("关系运算符".center(70,'='))
#交集 &
print("%s & %s 交集:\n"%(list_1,list_3),list_1 & list_3)
#并集 |
print("%s | %s 并集:\n"%(list_1,list_2),list_1 | list_2) #差集 在 list_1 中不在 list_2中
print("%s - %s 差集:\n"%(list_1,list_2),list_1 - list_2) #对称差集 在 list_1 或 list_2中,但不会同时出现在二者中
print("%s ^ %s 对称差集:\n"%(list_1,list_2),list_1 ^ list_2) print("集合的基本操作 增、删、改、查".center(70,'=')) #增加1个
list_1.add(999)
print("%s 增 add: \n"%(list_1),list_1) #增加多个 update
list_1.update([19,29,39])
print("%s 增加多个 update \n"%(list_1),list_1) #删除 remove
list_1.remove(999)
print("%s 删除 remove \n"%(list_1),list_1) #remove 删除不存在的会报错,discard 不会报错
print("%s 删除 discard \n"%(list_1),list_1.discard('ddd'))
list_1.discard(11)
print("%s 删除 discard \n"%(list_1)) #集合的长度
print("%s 长度 \n"%(list_1),len(list_1)) #是否是集合的成员
print("%s 是否在 集合中 \n"%(list_1),999 in list_1) #是否不是集合的成员
print("%s 不在 集合中 \n"%(list_1),999 not in list_1) #删除第一个
print("%s 删除第一个 \n"%(list_1),list_1.pop())
print(list_1)
Python之路 day2 集合的基本操作的更多相关文章
- Python之路,Day2 - Python基础(转载Alex)
Day2-转自金角大王 本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1. 列表.元组操作 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存 ...
- Python之路,Day2 - Python基础2
def decode(self, encoding=None, errors=None): """ 解码 """ ""& ...
- Python之路Day2
-->the start 养成好习惯,每次上课的内容都要写好笔记. 第二天内容主要是熟悉int.long.float.str.list.dict.tuple这几个类的内建方法. 对于Python ...
- 小白的Python之路 day2 字符串操作 , 字典操作
1. 字符串操作 特性:不可修改 name.capitalize() 首字母大写 name.casefold() 大写全部变小写 name.center(50,"-") 输出 '- ...
- 小白的Python之路 day2 文件操作
文件操作 对文件操作流程 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 现有文件如下 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 ...
- Python之路 day2 字符编码及转换
#!/usr/bin/env python # -*- coding:utf-8 -*- #Author:ersa import sys print("sys default encodin ...
- Python之路 day2 文件基础操作
#!/usr/bin/env python # -*- coding:utf-8 -*- #Author:ersa ''' #f,文件句柄;模式 a : append 追加文件内容 f = open( ...
- Python之路 day2 按行读文件
#1. 最基本的读文件方法: # File: readline-example-1.py file = open("sample.txt") while 1: line = fil ...
- Python之路-Day2
二进制 1bit = 一个二进制位 8bit = 1byte 循环 for while 数据类型 数字.字符串.列表.元祖.字典.集合 字符编码 文件处理 for循环: for i in range( ...
随机推荐
- MiniUI动态添加table表格
本文将介绍一下,如何用Jquery MiniUi动态添加一行table表格 1.效果展示 ↓ 2.具体代码 <script type="text/javascript"> ...
- HTTP标头
HTTP头信息 头信息由“键:值”组成.它们描述客户端或者服务器的属性.被传输的资源以及应该实现连接. 四种不同类型的头标 通用头标:即可用于请求,也可用于响应,是作为一个整体而不是特定资源与事务相关 ...
- Qt 工程 pro文件
工作中,感觉pro文件的有些内容真不太懂,现系统性的学习一下.于此备录,分享共勉. 为了更好的理解,先创建一个简单的工程作为实践. [1]创建一个pro文件 1.1 新建proDemo工程.步骤如下: ...
- 利用 async & await 的异步编程
走进异步编程的世界 - 开始接触 async/await 利用 async & await 的异步编程 async 的三大返回类型 公司技术需求备忘录
- 浅谈sql的字符分割
对于oracle:在字符串处理时:经常会遇到字符串分割的问题:可惜SQL中没有split函数:这个倒是挺困扰我们写sql的.对此:我来说说这字符串分割. 例如对字段str中一条数据是'120-mm-2 ...
- Python—redis
一.redis redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(sor ...
- $().each 和表单事件的坑
在用each循环时 1.想结束循环 return false 2.想跳过某循环 return 3.想跳出function 不行,请切换成其他循环如 for 使用form表单事件 1.必须要有submi ...
- js定义对象的几种容易犯的错误
//js定义对象的几种容易犯的错误function Person() { getName = function (){ console.info(1); }; return this;}//Perso ...
- nodejs httpserver
用nodejs服务器去拿取后台的数据.(我刚开始学的nodejs的时候是一个蒙圈的宝宝 t.t,开始接触的时候,在本地搭建去拿数据.之前菜鸟的我都不知道路由是神马[囧囧]). --> index ...
- SVN服务器搭建和使用(三)
SVN服务器搭建和使用(三) 接下来,试试用TortoiseSVN修改文件,添加文件,删除文件,以及如何解决冲突等. 添加文件 在检出的工作副本中添加一个Readme.txt文本文件,这时候这个文本文 ...