一、集合

集合的作用一:关系运算
集合的作用二:去重

定义集合:
集合内的元素必须是唯一的;
集合内的元素必须是可hash的,也是就不可变类型;
集合是无序的

  1. s={'egon',123,'egon','1'} #s=set({'egon',123,'egon','1'} )
  2. print(s,type(s))
  3.  
  4. s={'1',1,[1,2]}
  5. s={'1',1,(1,2),'a','b'}
  6. print(s)

循环

  1. s={'1',1,(1,2),'a','b'}
  2. for i in s:
  3. print(i)

  

关系运算

  1. python_s={'egon','alex','钢蛋','老王'}
  2. linux_s={'alex','钢蛋','欧德博爱','艾里科四'}
  3.  
  4. #取共同部分:交集
  5. print(python_s & linux_s)
  6.  
  7. #取老男孩所有报名学习的学生:并集
  8. print(python_s | linux_s)
  9.  
  10. #取只报名了python课程的学生:差集
  11. print(python_s - linux_s)
  12.  
  13. #取只报名了linux课程的学生:差集
  14. print(linux_s - python_s)
  15.  
  16. #取没有同时报名python和linux课程的学:对称差集
  17.  
  18. print(linux_s ^ python_s)

 集合方法

  1. #集合方法
  2. python_s={'egon','alex','钢蛋','老王'}
  3. linux_s={'alex','钢蛋','欧德博爱','艾里科四'}
  4.  
  5. print(python_s.intersection(linux_s))# 交集:python_s & linux_s
  6.  
  7. print(python_s.union(linux_s))#并集:|
  8.  
  9. print(python_s.difference(linux_s)) #python_s-linux_s
  10.  
  11. print(python_s.symmetric_difference(linux_s))# 对称差集,
  12. python_s ^ linux_s
  13.  
  14. python_s={'egon','alex','钢蛋','老王'}
  15. linux_s={'alex','钢蛋','欧德博爱','艾里科四'}
  16. python_s.difference_update(linux_s)
  17. print(python_s)

  集合操作类型

  1. s1={'a',1}
  2. s1.add(1) #追加一项
  3. print(s1)
  4.  
  5. s1.discard('a') #如果在 set “s”中存在元素 x, 则删除
  6. s1.discard('b')
  7. print(s1)
  8.  
  9. s1.remove('bbbbbbb') #移除
  10. print(s1)
  11.  
  12. s1={'a',1,'b','c','d'}
  13. print(s1.pop()) #随机删除

  

总结

  1. s.update(t)  
  2. |= t  
  3. 返回增加了 set t”中元素后的 set s  
  4.   
  5. s.intersection_update(t)  
  6. &= t  
  7. 返回只保留含有 set t”中元素的 set s  
  8.   
  9. s.difference_update(t)  
  10. -= t  
  11. 返回删除了 set t”中含有的元素后的 set s  
  12.   
  13. s.symmetric_difference_update(t)  
  14. ^= t  
  15. 返回含有 set t”或者 set s”中有而不是两者都有的元素的 set s  
  16.   
  17. s.add(x)  
  18.   
  19.  set s”中增加元素 x  
  20.   
  21. s.remove(x)  
  22.   
  23.  set s”中删除元素 x, 如果不存在则引发 KeyError  
  24.   
  25. s.discard(x)  
  26.   
  27. 如果在 set s”中存在元素 x, 则删除  
  28.   
  29. s.pop()  
  30.   
  31. 删除并且返回 set s”中的一个不确定的元素, 如果为空则引发 KeyError  
  32.   
  33. s.clear()  
  34.   
  35. 删除 set s”中的所有元素  

二、布尔类型:

True和False
 print(type(True))

count=10
 print(bool(count > 10))

#所有的数据类型自带布尔值,只有0,None,空的布尔值为False

  1. l=[]
  2. if len(l) == 0:
  3. print('列表为空')
  4.  
  5. print(bool(l))
  6. if not l: #bool(l)
  7. print('列表为空')

  

字符串

  1. 定义:它是一个有序的字符的集合,用于存储和表示基本的文本信息,‘’或“”或‘’‘ ’‘’中间包含的内容称之为字符串
    特性:
    1.只能存放一个值
    2.不可变
    3.按照从左到右的顺序定义字符集合,下标从0开始顺序访问,有序
    补充:
      1.字符串的单引号和双引号都无法取消特殊字符的含义,如果想让引号内所有字符均取消特殊意义,在引号前面加r,如namer'l\thf'
      2.unicode字符串与r连用必需在r前面,如nameur'l\thf'

Python基础(4)_集合、布尔类型的更多相关文章

  1. python基础操作_集合_三元运算

    #使用操作文件的时候,可以使用with函数#with open('E:\info.txt','a+') as fr#fr这个值可以是任意值# :#for line in fr:'''with open ...

  2. python基础——数字&集合&布尔类型

    Python的核心数据类型 内置对象 对象类型 例子 数字 123,3.1415,3+4j,Decimal(小数),Fraction(分数) 字符串 'dodo',"guido's" ...

  3. 『Python基础-11』集合 (set)

    # 『Python基础-11』集合 (set) 目录: 集合的基本知识 集合的创建 访问集合里的值 向集合set增加元素 移除集合中的元素 集合set的运算 1. 集合的基本知识 集合(set)是一个 ...

  4. Python基础数据类型之集合

    Python基础数据类型之集合 集合(set)是Python基本数据类型之一,它具有天生的去重能力,即集合中的元素不能重复.集合也是无序的,且集合中的元素必须是不可变类型. 一.如何创建一个集合 #1 ...

  5. Python基础篇(set集合)

    Python基础篇(set集合,深浅拷贝) set集合是Python的一个基本类型,一般是不常用.set中的元素是不重复的.无序的里边 的元素必须是可hash的比如int,str,tuple,bool ...

  6. python基础教程_学习笔记19:标准库:一些最爱——集合、堆和双端队列

    版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/signjing/article/details/36201499 标准库:一些最爱 集合.堆和双端队 ...

  7. Python基础:05集合类型

    Python中,集合对象是一组无序排列的可哈希的值.所以集合成员可以做字典中的键.集合中的元素都是唯一的. 集合(sets)有两种不同的类型,可变集合(set) 和 不可变集合(frozenset). ...

  8. Python基础(2)--对象类型

    Python使用对象模型来存储数据.构造任何类型的值都是一个对象 所有的Python对象都拥有三个特性:身份.类型.值 身份: 每一个对象都有一个唯一的身份来标志自己,任何对象的身份可以使用内建函数i ...

  9. python基础(1) 变量类型

    变量赋值: python中的变量不需要类型声明 每个变量在使用前必须赋值,变量赋值以后才会被创建 变量在内存中创建时,包括变量的标识.名称和数据这些信息. EX: #!/usr/bin/python ...

随机推荐

  1. 1977: [BeiJing2010组队]次小生成树 Tree

    1977: [BeiJing2010组队]次小生成树 Tree https://lydsy.com/JudgeOnline/problem.php?id=1977 题意: 求严格次小生成树,即边权和不 ...

  2. bzoj 一些题目汇总

    2140: 稳定婚姻 /* 求联通分量. */ #include<bits/stdc++.h> using namespace std; typedef long long LL; inl ...

  3. itop-4412开发板学习-内核信号量

    1. 翻翻书看下,linux提供两种信号量,内核信号量,由内核控制路径使用,System V IPC信号量,由用户态进程使用.下面的就是内核部分的信号量.内核信号量类似于自旋锁,当锁关闭着时,不允许内 ...

  4. Django笔记 —— 表单(form)

    最近在学习Django,打算玩玩网页后台方面的东西,因为一直很好奇但却没怎么接触过.Django对我来说是一个全新的内容,思路想来也是全新的,或许并不能写得很明白,所以大家就凑合着看吧- 本篇笔记(其 ...

  5. jmeter使用BeanShell断言

    1. 首先存储一个接口的响应结果,如在http请求的BeanShell PostProcessor: import java.io.UnsupportedEncodingException; Syst ...

  6. Oracle 学习笔记(四)

    ​oracle表查询 使用逻辑操作符号  查询工资高于 500 或者是岗位为 MANAGER 的雇员,同时还要满足他们的姓名首字母为大写 J SELECT * FROM emp WHERE (sal ...

  7. java设计模式之门面模式以及在java中作用

    门面模式在Tomcat中有多处使用,在Request和Response对象封装,从ApplicationContext到ServletContext封装中都用到了这种设计模式. 一个系统可以有几个门面 ...

  8. MyBatis实例教程--以接口的方式编程

    以接口的方式编程: 只需要修改两个地方即可, 1.mapper.xml(实体类)配置文件, 注意mapper的namespace的名字是mapper对象的完整路径名com.xiamen.mapper. ...

  9. 【SSH】——hql的使用方式及实现原理

    [含义] hql,即Hibernate Query  Language.它与我们熟知的sql很类似,它最大的特点就是对查询进行了面向对象的封装,下面会在具体例子中说明. sql查询的是数据库中的表或字 ...

  10. Windows下的Memcache安装与Java部署

    Windows下的Memcache安装: 1. 下载memcached的windows稳定版,解压放某个盘下面,比如在c:\memcached 2. 在终端(也即cmd命令界面)下输入 ‘c:\mem ...