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( ...
随机推荐
- Ubuntu14.04台式机r8169有线网卡驱动问题
由于台式在安装了Ubuntu14.04后插入网线后灯不亮,不能使用有线网. 查找资料发现原来是网卡驱动问题,解决办法如下: 1.查看网卡驱动名称 lspci -v 找到以太网连接的kernel dri ...
- 初学软件测试之——如何使用Junit4
前几天刚刚接触软件测试,这篇文章主要是介绍使用eclipse的插件——Junit4进行单元测试.下面先介绍一下单元测试的定义:单元测试(unit testing),是指对软件中的最小可测试单元进行检查 ...
- GridView的高度自适应
接着上面一篇文章. 当GridView不知道parent高度的时候,也就是MeasureSpec是UNSPECIFIED,这个时候,GridView高度为第一个child的高度,并显示滚动条. mIt ...
- 动态SQL字符长度超过8000
动态SQL字符长度超过8000,我记得SQL SERVER 2008中用SP_EXECUTESQL打破了这个限制. 平常用动态SQL,可能都会用EXEC(),但是有限制,就是8000字符串长度.自从S ...
- django 同步数据库
http://www.jianshu.com/p/dbc4193b4f95 博主教程讲解比较详细,可做参考使用.
- 技术之余。。。电吉他自弹 魂斗罗 solo
测试一下 ---恢复内容开始--- ---恢复内容结束---
- Ruby中 Include, Extend, Import, Require 的使用区别
Include 如下例当你Include一个模块到某个类时, 相当于把模块中定义的方法插入到类中.它允许使用 mixin.它用来 DRY 你的代码, 避免重复.例如, 当你有多个类时, 需要相同的函数 ...
- maven项目和普通项目转换
- Cocosd-x的坐标系
OpenGL 坐标系 : 原点在屏幕左下角,x 轴向右,y 轴向上. UI坐标体系 : 原点在屏幕左上角,x 轴向右,y 轴向下. 屏幕坐标系: UI 世界坐标系: 也叫绝 ...
- python 学习笔记十七 django深入学习二 form,models
表单 GET 和 POST 处理表单时候只会用到GET 和 POST 方法. Django 的登录表单使用POST 方法,在这个方法中浏览器组合表单数据.对它们进行编码以用于传输.将它们发送到服务器然 ...