python基础学习-集合

#__author:"Feng Lin"
#date: 2018/8/26
#集合是无序的,不重复的数据集合,它里面的元素是可哈希的(不可变类型),但是集合本身是不可哈希的(所以集合做不了字典的键)
#集合注意记住以下几点
#1.元素去重
#2.关系测试,交集、并集、差集
set1=set({1,2,3})
#集合中的元素不可变类型,否则会报错
#set2={1,2,3,{‘name‘:‘alex‘},[1,2]}

#集合增加元素,add、update

set1={‘wangjinxin‘,‘penglei‘,‘fangren‘,‘liuchong‘,‘lintianyi‘}
print(set1)
set1.add("女神")
print(set1)
#update可增加跌代对象
set1.update(range(10))
print(set1)

#随机删除
print(set1.pop())
#按元素删除
set1.remove(1)
print(set1)

#清空集合,空集合表示为set()
set1.clear()
print(set1)
# del set1
# print(set1)

#查
set2={‘haha‘,‘hihi‘,‘aa‘,‘xx‘,‘dd‘}
for i in set2:
    print(i)
#求交集
set1={1,2,3}
print(set1)
set2={4,5,6,7,8}
print(set2)
set3=set1 & set2
print(set3)

#求反交集
print(set1^set2)

#求并集,两种方法
print(set1|set2)
print(set2.union(set1))

#求差集
print(set1-set2)
print(set2-set1)
#判断是否为子集或者超集返回bool值
print(set1 < set2)
print(set1 > set2)

#考题,给下面列表去重
li=[1,2,33,44,22,2,2,1,4,5,6,61,2,3]
#将列表转化成集合去重
li1=set(li)
print(li1)
#将去重后的集合重新转化成列表
li=list(li1)
print(li)

#不可变集合frozenset
s=frozenset(‘babsddaw‘)
print(s,type(s))
for i in s:
     print(i)

原文地址:https://www.cnblogs.com/lalalaxixixi/p/9539625.html

时间: 2024-10-11 08:02:56

python基础学习-集合的相关文章

25、python基础学习-集合

1 #!/usr/bin/env python 2 #__author: hlc 3 #date: 2019/6/1 4 5 # set 集合 6 # 集合 把不同的元素组成一起形成集合,集合时python的基础类型 7 # 组成集合的成员不可重复 8 # a = [1,2,3,4,5,1,2,3,4,5,"a","a","a","b","b""b","c"] 9 #

python基础学习05(核心编程第二版)部分

# -*- coding: utf-8 -*- # ==================== #File: python #Author: python #Date: 2014 #==================== __author__ = 'Administrator' #dict{键:值} #哈希 #注:字典是无顺序的,所以你懂的 #创建与赋值 dict1={} dict2={'name':'apply','avg':24,'sex':'man'} print dict1,dict2

python基础学习07(核心编程第二版)部分

# -*- coding: utf-8 -*- # ==================== #File: python #Author: python #Date: 2014 #==================== __author__ = 'Administrator' #file与input output #文件对象 #简单说来,就是写入和读取的方式 #file(),open()2个操作都是一样的,一般推荐open() #语法 # open(name[, mode[, bufferin

python基础学习12(核心编程第二版)部分

# -*- coding: utf-8 -*- # ==================== #File: python #Author: python #Date: 2014 #==================== __author__ = 'Administrator' #python class #面向对象编程oop思想,3个特性:封装.继承.多态,在其他方面的功能,比如重载,模拟等,也可以自定义自己需要的类 #在python中,面向对象主要2个:类和类实例 #类与实例 #类与实例有关

Python基础学习五

Python基础学习五 迭代 for x in 变量: 其中变量可以是字符串.列表.字典.集合. 当迭代字典时,通过字典的内置函数value()可以迭代出值:通过字典的内置函数items()可以迭代出键值对. for key in dict: #迭代键 for val in dict.value(): #迭代值 for k,v in dict.items(): #迭代键值对 当迭代列表时,通过内置函数enumerate()可以迭代出索引加值. for i in list #迭代列表 for i

python基础学习日志day5-各模块文章导航

python基础学习日志day5---模块使用 http://www.cnblogs.com/lixiang1013/p/6832475.html python基础学习日志day5---time和datetime模块 http://www.cnblogs.com/lixiang1013/p/6848245.html python基础学习日志day5---random模块http://www.cnblogs.com/lixiang1013/p/6849162.html python基础学习日志da

Python 基础学习 网络小爬虫

<span style="font-size:18px;"># # 百度贴吧图片网络小爬虫 # import re import urllib def getHtml(url): page = urllib.urlopen(url) html = page.read() return html def getImg(html): reg = r'src="(.+?\.jpg)" pic_ext' imgre = re.compile(reg) imgli

Python基础学习(九)

Python 多线程 多线程类似于同时执行多个不同程序,多线程运行有如下优点: 使用线程可以把占据长时间的程序中的任务放到后台去处理. 用户界面可以更加吸引人,这样比如用户点击了一个按钮去触发某些事件的处理,可以弹出一个进度条来显示处理的进度 程序的运行速度可能加快 在一些等待的任务实现上如用户输入.文件读写和网络收发数据等,线程就比较有用了.在这种情况下我们可以释放一些珍贵的资源如内存占用等等. 线程在执行过程中与进程还是有区别的.每个独立的线程有一个程序运行的入口.顺序执行序列和程序的出口.

python基础学习08(核心编程第二版)部分

# -*- coding: utf-8 -*- # ==================== #File: python #Author: python #Date: 2014 #==================== __author__ = 'Administrator' #异常 """ NameError: 尝试访问一个未申明的变量 ZeroDivisionError:  除数为零 SyntaxError: 解释器语法错误 IndexError: 请求的索引超出序列范