1、基础数据类型汇总补充

1,list:
在循环一个列表是,最好不能删除列表中的元素。
2,bool
空列表、int:0、空str、空dict、空set---》bool:false
其余为true
3,dict
dic = dict.fromkeys([1,2,3],'春哥')
print(dic)
在循环一个字典当中不能删字典内的内容
面试题:
tu1 =(1)----->int
tu2 =(1,)------->tuple
元祖里边只有一个元素,且不加‘,’该是什么类型还是什么类型。

2、集合

1,集合是一个可变数据类型,里边存的元素必须是不可变的数据类型。集合无序,元素不能重复。-------》去重:将列表转化为集合,在转化回去就可以去重。
2,形式 {}: set1 =set({1,2,3})
                print(set1)
      set2={1,2,3}
------》不可哈希:可变数据类型。
增、删、查

增:

1、add

set1 = {'alex','wusir','ritian','egon','barry'}
set1.add('女神')
print(set1)
#set1 = {'alex','wusir','ritian','egon','barry','女神 '}        
2,update---->与extend类似。
#update
set1 = {'alex','wusir','ritian','egon','barry'}
set1.update('abc')
print(set1)

1,pop

set.pop()#随机删除,有返回值

2,remove

remove#按元素去删。没有这个元素会报错

3,clear

clear#清空集合
4,del
del 删除集合。---》会报错

只能用for去查

3、集合的交集并集差集

1,交集:

set1 ={1,2,3,4,5}
set2 ={4,5,6,7,8} set3 = set1& set2 print(set)

或者

set1 ={1,2,3,4,5}
set2 ={4,5,6,7,8}
print(set1.intersection(set2))

2,并集

set1 ={1,2,3,4,5}
set2 ={4,5,6,7,8}
 print(set1 | set2) 

或者

set1 ={1,2,3,4,5}
set2 ={4,5,6,7,8}
print(set2.union(set1))

3,反交集

set1 ={1,2,3,4,5}
set2 ={4,5,6,7,8}
print(set1 ^ set2)
或者
set1 ={1,2,3,4,5}
set2 ={4,5,6,7,8}
print(set1.symmetric_difference set2)

4,差集

set1 ={1,2,3,4,5}
set2 ={4,5,6,7,8}
print(set1.difference(set2))

或者:

set1 ={1,2,3,4,5}
set2 ={4,5,6,7,8}
print(set1-set2)
面试题:(去重)
 
li=[1,2,33,33,2,1,4,5,6,6]    
#去除重复元素----set
s1 = set(li)
print(set1) #{1,2,33,4,5,6}
li = list(set1)
print(li)

---------------------------------------------------------------------------------------------------------------------------------------

4、将集合转化为不可变数据类型

        s =frozenset('barry')---->frozen类型
 

5,深浅拷贝

1,浅copy
li =[1,2,3]
li2 = li.copy()
copy产生了一个新的列表----》copy----》浅copy
2,深copy

浅copy。赋值运算是共用一个ip地址,切片再赋值是浅copy
 
 

补充:

枚举
for i in enumerate(li):
    print(i)
 

Python学习日记:day7-----集合的更多相关文章

  1. Python学习日记(四) 集合和元祖

    元祖的特性:是一个只读列表.可以循环.可以切片,修改数据遵循'儿子'不能改但'孙子'可能可以改. iterable:可迭代对象(元祖.列表.字串.集合) 元祖宣告方式: tu = (1,2,3,['a ...

  2. Python 学习日记(第三周)

    知识回顾 在上一周的学习里,我学习了一些学习Python的基础知识下面先简短的回顾一些: 1Python的版本和和安装 Python的版本主要有2.x和3.x两个版本这两个版本在语法等方面有一定的区别 ...

  3. Python学习记录day7

    目录 Python学习记录day7 1. 面向过程 VS 面向对象 编程范式 2. 面向对象特性 3. 类的定义.构造函数和公有属性 4. 类的析构函数 5. 类的继承 6. 经典类vs新式类 7. ...

  4. python学习笔记整理——集合 set

    python学习整理笔记--集合 set 集合的用途:成员测试和消除重复的条目,进行集合运算 注意:花括号或set()函数可以用于创建集合. 注意:若要创建一个空的集合你必须使用set(),不能用{} ...

  5. Python学习日记 --day2

    Python学习日记 --day2 1.格式化输出:% s d  (%为占位符 s为字符串类型 d为数字类型) name = input('请输入姓名') age = int(input('请输入年龄 ...

  6. python学习日记(基础数据类型及其方法01)

    数字 int 主要是用于计算的,常用的方法有一种 #既十进制数值用二进制表示时,最少使用的位数i = 3#3的ASCII为:0000 0011,即两位 s = i.bit_length() print ...

  7. 【Python学习之四】集合类型

    环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 python3.6 一.字符串:字符串实际上就是字符的数组1.切片是指 ...

  8. Python学习日记(一):拜见小主——Python

    近日学习Python,特将学习过程及一点心得记录于此. 由于之前做过一个Java爬虫的项目,虽然很长时间没有碰过爬虫,但是小郭同学有一颗不死的爬虫心,哈哈.最近在互联网上找一些电影的时候,有很多电影只 ...

  9. python学习-day14:集合,函数,格式化

    一.集合 定义:由不同元素组成的集合.集合是一组无序排列的可hash值, 可以作为字典的key.元素必须是不可变类型:只能存放数字,字符串,字典 特性:集合的目的是将不同的值放在一起,不同的集合之间可 ...

  10. Python学习日记

    江林楠学习了一下午后给大家呈现的20分钟速成Python—— 一些基本的语法:1.python无变量声明 直接a = []即可.2.python为对齐语言,用制表符表示语句块的嵌套.3.python语 ...

随机推荐

  1. TFboy养成记 tensorboard

    首先介绍几个用法: with tf.name_scope(name = "inputs"): 这个是用于区分区域的.如,train,inputs等. xs = tf.placeho ...

  2. C# Code First 实例学习

    Code First是Entity Framework提供的一种新的编程模型.通过Code First我们可以在还没有建立数据库的情况下就开始编码,然后通过代码来生成数据库.下面具体讲解一下,在操作的 ...

  3. 「JavaScript」手起刀落-一起来写经典的贪吃蛇游戏

    回味 小时候玩的经典贪吃蛇游戏我们印象仍然深刻,谋划了几天,小时候喜欢玩的游戏,长大了终于有能力把他做出来(从来都没有通关过,不知道自己写的程序,是不是能通关了...),好了,闲话不多谈,先来看一下效 ...

  4. [flask实践] 解决mysql数据库不支持中文的问题

    接上一篇文章,在解决了mysql+flask环境配置问题之后,往数据库存中文字符串会报1366错误,提示不正确的字符.继而发现默认的mysql采用了Latin1字符集,这种编码是不支持中文的. 如果想 ...

  5. RPC是什么

    RPC是什么? 通俗的讲就是,调用远程计算机上的服务,就像调用本地服务一样.通常包含传输协议和编码协议. RPC可以基于HTTP或TCP协议,但基于HTTP协议的RPC性能却不如基于TCP协议的RPC ...

  6. js 获取每月有几周,根据年月周获取该周从周一到周日的日期等方法

    本文基于react-native 本人在用react-native写一个关于课程表的APP时需要课程表按照日期周期显示,网上查了许多方法,都没有达到自己想要的效果,根据一些方法的参考,再根据自己思维写 ...

  7. 项目实战7—Mysql实现企业级数据库主从复制架构实战

    Mysql实现企业级数据库主从复制架构实战 环境背景:公司规模已经形成,用户数据已成为公司的核心命脉,一次老王一不小心把数据库文件删除,通过mysqldump备份策略恢复用了两个小时,在这两小时中,公 ...

  8. 实践作业2:黑盒测试实践——小组任务分工 Day 1

    今日教学实验任务分配后,课下小组例会完成任务分工,具体分工如下: (1)系统需求分析--刘思佳 (2)设计测试用例--王俊杰 (3)编写.运行测试脚本--郜昌磊 (4)记录测试过程--吴慧杰 (5)记 ...

  9. HDU 1014 Uniform Generator 欧几里得

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1014 解题思路: 1. 把题目意思读懂后,明白会输入两个数,然后根据题中的公式产生一系列伪随机数,看这 ...

  10. 51Nod 1352 集合计数 扩展欧几里得

    基准时间限制:1 秒 空间限制:131072 KB 分值: 20 难度:3级算法题 给出N个固定集合{1,N},{2,N-1},{3,N-2},...,{N-1,2},{N,1}.求出有多少个集合满足 ...