# 集合:它也是一种容器类型,可以存储多个数据,表现形式: {1, 3, 4, ...}

# 集合的作用:1、利用集合对容器类型的中数据可以去重

# 2、利用集合进行关系运算

# 集合特点:

# 1. 无序

# 2. 数据是唯一,不重复

# 3. 集合也是一个可变类型

# 定义集合

my_set = {"a", 'b', 1, 2}

print(my_set, type(my_set))

print("修改前my_set:", my_set, id(my_set))

# 集合添加数据的操作

my_set.add("c")

print("修改后my_set:", my_set, id(my_set))

# 删除数据

my_set.remove(1)

print("修改后my_set:", my_set, id(my_set))

# 4、集合的内置方法

# 关系运算

set1 = {"a","k","j","e"}

set2 = {"b","c","j","e"}

# 4.1 取交集:&

result=set1 & set2

print(result)

print(set1.intersection(set2))

# 4.2 取并集/合集:|

print(set1 | set2)

print(set1.union(set2))

# 4.3 取差集:-

print(set1 - set2)

print(set1.difference(set2))

print(set2 - set1)

print(set2.difference(set1))

# 4.4 对称差集:^

print(set1 ^ set2)

print(set1.symmetric_difference(set2))

# 4.5 父子集:

s1={1,2,3}

s2={1,2,4}

print(s1 > s2) # s1是父集

print(s1 < s2) #s1是s2的子集

s1={1,2,3}

s2={1,2}

print(s1 > s2) # 当s1大于或等于s2时,才能说是s1是s2他爹

print(s1.issuperset(s2))

print(s2.issubset(s1)) # s2 < s2 =>True

s1={1,2,3}

s2={1,2,3}

print(s1 == s2) # s1与s2互为父子

print(s1.issuperset(s2))

print(s2.issuperset(s1))

# 集合的注意点

# 1. 不能通过下标获取和修改集合中的数据

# 2. 定义一个空的集合,需要使用set(), 不能直接使用: {}表示字典

# 3. 扩展-- 集合里面只能存储不可变类型(数字,字符串,元组,range)

my_set1 = {1, 2, 'b', 'a'}

# 错误的演示

# result = my_set1[1]

# print(result)

# my_set1[2] = 4

# 定义空的集合

my_set2 = set() # 不能使用大括号创建集合 {}

print(my_set2, type(my_set2))

# 想要获取集合中的数据

# 1. for遍历

# 2. 拆包

# for value in my_set4:

# print(value)

v1, v2, v3, v4 = my_set4

print(v1, v2, v3, v4)

# 扩展:间接修改集合中的数据

my_set4.remove(1)

my_set4.add(5)

print(my_set4)

# 扩展: 清空集合中的数据

my_set5 = {1, 'a'}

print(my_set5)

my_set5.clear()

print(my_set5)

my_list = [1, 3, 1]

# 把列表转成集合,就可以对列表中的数据进行去重操作

new_set = set(my_list)

print(new_set, type(new_set))

# 把集合可以转成list

new_list = list(new_set)

print(new_list, type(new_list))

my_tuple = (1, 'a', 1, 'a')

# 把元组转成集合

new_set = set(my_tuple)

print(new_set, type(new_set))

# 把集合转成元组

new_tuple = tuple(new_set)

print(new_tuple, type(new_tuple))

# 总结: 列表、元组、集合三者之间可以相互进行类型转换

my_list = [1, 4]

new_tuple = tuple(my_list)

print(new_tuple, type(new_tuple))

new_list = list(new_tuple)

print(new_list, type(new_list))

# 这样不可以转成set

# my_list = [[1,2], [3, 4]]

# set(my_list)

python变量类型是集合_python基础-基本数据类型:集合相关推荐

  1. python变量类型之间转换_Python变量赋值类型转换

    原博文 2018-01-22 22:05 − 1.Python定义变量 1 name = cross10 2 print('name=',name) 打印结果: name=cross10 2.Pyth ...

  2. python序列类型举例说明_Python基础__Python序列基本类型及其操作(1)

    本节考虑的Python的一个中要的内置对象序列, 所谓的序列即一个有序对象的集合.这里的对象可以是数字.字符串等.根据功能的不同将序列分为字符串.列表.元组,本文将以下这几种对象做一些介绍. 一. 字 ...

  3. python 只取年月日 字符串_Python基础:数据类型和变量amp;字符串和编码

    Python基础:1.数据类型和变量 数据类型 计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当然地可以处理各种数值.但是,计算机能处理的远不止数值,还可以处理文本.图形.音频.视频.网 ...

  4. python数字类型及运算_Python基础教程:运算符以及数据类型解析

    运算符 一.算数运算: 二.比较运算: 三.赋值运算 四.逻辑运算 五.成员运算 基本数据类型 一.Number(数字) Python3中支持int.float.bool.complex. 使用内置的 ...

  5. python变量定义的规则_Python基础教程(2)Python变量与注释

    一.Python变量定义规则 在Python中定义变量的方式和Shell很像,有以下规则: 1.变量名只能是字母.数字或者下划线的组合,不能有空格或者其他特殊字符,且第一个字符不能是数字 2.使用变量 ...

  6. python数字类型及运算_Python基础之(基本数据类型及运算)

    一.运算 1.1.算数运算 1.2.比较运算: 1.3.赋值运算: 1.4.逻辑运算: 1.5.成员运算: 针对逻辑运算的进一步研究: 1.在没有()的情况下not 优先级高于 and,and优先级高 ...

  7. python变量后面加星号_Python基础找茬系列20--python函数的秘密

    一.小试牛刀 二.函数的定义 def 函数名(参数列表): 函数体 [1]函数的关键词:是def,不是del,也不是function [2]函数的名称:不能使用关键词作为函数的名称,允许使用内置函数名 ...

  8. python变量类型之间转换_Python常用数据类型之间的转换总结

    函数 描述 int(x [,base]) 将x转换为一个整数 long(x [,base] ) 将x转换为一个长整数 float(x) 将x转换到一个浮点数 complex(real [,imag]) ...

  9. [转载] python tuple类型如何索引_Python基础数据类型——tuple浅析

    参考链接: Python tuple() Python中tuple的使用 一.什么是元组? 有序列表叫元组:tuple.tuple和list非常类似,但是tuple一旦初始化就不能修改. 二.用法 1 ...

最新文章

  1. 带有框架的iOS应用在设备上崩溃,dyld:库未加载,Xcode 6 Beta
  2. sysbench安装和使用(亲测)
  3. numpy 的基本使用1
  4. java 判断域密码到期提醒,Exchange Server 2010下,检测用户密码到期通知提醒脚本...
  5. java 静态代码块_JAVA静态代码块
  6. css样式子绝父相,子绝父相_HTML+CSS前端基础知识教程_腾讯视频
  7. 鸿蒙os会给小米用吗,国内手机厂商是否支持鸿蒙?中兴正式回应!小米的态度很意外!...
  8. Java 搭建srs流媒体服务器,并使用ffmpeg推流
  9. Typora使用简介与插入数学公式
  10. LabVIEW编程LabVIEW开发以编程方式将前面板移动到所需位置
  11. github手把手使用教程
  12. java中instant_Instant
  13. Java【案例6-2】 学生管理系统
  14. 虾皮店铺优化有哪几个要点?
  15. 笔记本 原因代码: 0x500ff 关机类型: 关闭电源_关于笔记本电池更换的建议
  16. 数据运营-计算留存率和转化率(漏斗分析Python)
  17. mac远程阿里云服务器
  18. 用于学术论文阅读外文学习的高效翻译工具——多译
  19. OpenCV视频篇——从.JPG到.AVI:视频编码最强入门科普
  20. 机器学习(聚类十)——谱聚类及代码实现

热门文章

  1. SAP UI5 new sap.ui.commons.Button trigger component load
  2. 从Eclipse使用team provider上传UI5 application到server的注意事项
  3. SAP Commerce Cloud deprecation机制
  4. Cloud for Customer手机应用上传图片禁止从本地相册选择图片的核心代码
  5. Cloud for Customer根据后台数据实时刷新的逻辑调试
  6. 如何用SAP WebIDE的Fiori创建向导基于ABAP OData service快速创建UI5应用
  7. 修改某个appointment已经存在的opportunity relation
  8. Linux下的基本命令详解,Linux基本命令详解-1.0
  9. log4j配置_是时候了解一下log4j2各种配置的含义了!
  10. m.2接口和nvme区别_透明款散热不好,那么ORICO 全铝NVMe固态硬盘盒了解一下?