python基础之七:set 集合
集合(set)是一个无序的不重复元素序列。只可以存储不可变类型数据,即可哈希的数据类型,
如:元组(tuple)、字符(str)、整型(int)、布尔型(bool)
可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },
因为 { } 是用来创建一个空字典。
set1 = set({1, 2, 3, 4})
set2 = {'wuhan', 'taibei', 'soul'}
print(type(set1))
相关操作
'''增'''
set1.add(4) # 无序插入,如果插入集合中有的元素,会去重!因为它是不重复的!
set1.add(5)
set1.update('Alpha') # 将字符串拆分后,分别无序插入集合中
print(set1) '''删'''
set1.pop() # 随机删除
set2.remove('wuhan') # 按元素删除
print(set2)
set1.clear() # 清空集合
print(set1)
del set1 # 删除集合
# print(set1) '''查'''
for i in set2: # 只能如此查询
print(i) '''交集'''
set1 = {1, 2, 3, 6, 8, 9}
set2 = {6, 8, 10, 12, 16}
set3 = set1 & set2
set4 = set1.intersection(set2)
print(set3, set4) '''反交集'''
set5 = set1 ^ set2
set6 = set1.symmetric_difference(set2)
print(set5, set6) '''并集'''
set7 = set1 | set2
set8 = set1.union(set2)
print(set7, set8) '''差集'''
set9 = set1 - set2 # set1独有的,即set2没有的
set10 = set1.difference(set2)
print(set9, set10) '''子集和超集'''
set1 = {6, 8, 10}
print('set1是不是set2的子集:{0}'.format(set1 < set2))
print('set1是不是set2的子集:{0}'.format(set1.issubset(set2)))
print('set2是不是set1的超集:{0}'.format(set2 > set1))
print('set2是不是set1的超集:{0}'.format(set2.issuperset(set1)))
frozenset(冻结集合)可理解为只读的集合
set0 = frozenset('abcde') # 只能是一个可迭代的元素
set0 = frozenset([1,3,5,7,9]) # 只能是一个可迭代的元素
print(set0, type(set0))
# 只读即只能查询
for i in set0:
print(i)
集合相关面试题:
有列表如下:[1,22,33,22,44,55,22,22,88,22]请将该列表中重复的元素去除。
num_li = [1,22,33,22,44,55,22,22,88,22]
temp_set = set(num_li)
new_li = list(temp_set)
print(new_li)
python基础之七:set 集合的更多相关文章
- 『Python基础-11』集合 (set)
# 『Python基础-11』集合 (set) 目录: 集合的基本知识 集合的创建 访问集合里的值 向集合set增加元素 移除集合中的元素 集合set的运算 1. 集合的基本知识 集合(set)是一个 ...
- Python基础数据类型之集合
Python基础数据类型之集合 集合(set)是Python基本数据类型之一,它具有天生的去重能力,即集合中的元素不能重复.集合也是无序的,且集合中的元素必须是不可变类型. 一.如何创建一个集合 #1 ...
- Python基础篇(set集合)
Python基础篇(set集合,深浅拷贝) set集合是Python的一个基本类型,一般是不常用.set中的元素是不重复的.无序的里边 的元素必须是可hash的比如int,str,tuple,bool ...
- python基础之七种运算符
废话不多说,上节说的是数据类型,本篇讲讲数据运算. 在算式"1+2"中,"1"和"2"被称为操作数,"+"被称为运算符 ...
- 3.python基础补充(集合,collection系列,深浅拷贝)
一.集合 1.集合(set): 把不同的元素组成一起形成集合,是python基本的数据类型.集合元素(set elements):组成集合的成员 python的set和其他语言类似, 是一个无序不重复 ...
- Python基础数据类型之集合以及其他和深浅copy
一.基础数据类型汇总补充 list 在循环一个列表时,最好不要删除列表中的元素,这样会使索引发生改变,从而报错(可以从后向前循环删除,这样不会改变未删元素的索引). 错误示范: lis = [,,, ...
- Python基础-字符串、集合类型、判断、深拷贝与浅拷贝、文件读写
字符串 1.定义三个变量: 2.交换两个变量值 1)引入第三个变量: 2)Python引入第三方变量: 3)不引入第三方变量: 3. isalpha 是否是汉字或字母 4.Isalnum 是否是汉字 ...
- Python 全栈开发二 python基础 字符串 字典 集合
一.字符串 1,在python中,字符串是最为常见的数据类型,一般情况下用引号来创建字符串. >>ch = "wallace" >>ch1 = 'walla ...
- Python基础 之 set集合 与 字符串格式化
数据类型的回顾与总结 可变与不可变1.可变:列表,字典2.不可变:字符串,数字,元组 访问顺序:1.直接访问:数字2.顺序访问:字符串,列表,元祖3.映射:字典 存放元素个数:容器类型:列表,元祖,字 ...
随机推荐
- idea之导入Eclipse Maven项目
Idea之导入Eclipse Maven项目:https://blog.csdn.net/qq_33442160/article/details/81876428参考上述链接即可,这里不再赘述.
- (十)golang--运算符
1.算术运算符 + - * / % ++ -- 使用细节:(1)对于"/"号,整数除和小数除的区别: (2)++和--只能独立使用,即a=a++是不允许的:没有++a和--a:i ...
- HTML连载27-层叠性&优先级&!important用法
一.层叠性 1.定义:CSS处理冲突的一种能力 2.注意点:层叠性只有在多个选择器中“同一标签”,然后又设置了“相同的属性”,才会发生层叠性 3.CSS缩写:Cascading StyleSheet ...
- Spring AOP环绕异常影响的报错
最近遇到一个问题,异常是: java.lang.ClassCastException: org.springframework.http.ResponseEntity cannot be cast t ...
- 19条常用的MySQL优化方法(转)
本文我们来谈谈项目中常用的MySQL优化方法,共19条,具体如下:1.EXPLAIN命令做MySQL优化,我们要善用EXPLAIN查看SQL执行计划.下面来个简单的示例,标注(1.2.3.4.5)我们 ...
- 怎么写自己的CMakeLists.txt--二
之前写过一篇及其简单的关于CMakeLists.txt的写法,现在重点剖析find_package的用法. 如果程序中使用了外部库,事先并不知道它的头文件和链接库的位置,就要给出头文件和链接库的查找方 ...
- WPF MultiBinding,多值转化器IMultiValueConverter,自制调色板 palette
public class RGBConverter : IMultiValueConverter { //正向修改,整合颜色值 public object Convert(object[] value ...
- python 练习题:接收一个或多个数并计算乘积
以下函数允许计算两个数的乘积,请稍加改造,变成可接收一个或多个数并计算乘积 def product(x, y): return x * y # -*- coding: utf-8 -*- def pr ...
- C#实现UrlEncode (URL编码)
public static string UrlEncode(string str) { StringBuilder sb = new StringBuilder(); byte[] byStr = ...
- Java集合Map基本方法
jdk1.7 api中的方法摘要: 参考java集合大全图:https://www.cnblogs.com/xkzhangsanx/p/10889114.html Map为所有Map子类的接口.