Python基础(4)_集合、布尔类型
一、集合
集合的作用一:关系运算
集合的作用二:去重
定义集合:
集合内的元素必须是唯一的;
集合内的元素必须是可hash的,也是就不可变类型;
集合是无序的
s={'egon',123,'egon','1'} #s=set({'egon',123,'egon','1'} )
print(s,type(s)) s={'1',1,[1,2]}
s={'1',1,(1,2),'a','b'}
print(s)
循环
s={'1',1,(1,2),'a','b'}
for i in s:
print(i)
关系运算
python_s={'egon','alex','钢蛋','老王'}
linux_s={'alex','钢蛋','欧德博爱','艾里科四'} #取共同部分:交集
print(python_s & linux_s) #取老男孩所有报名学习的学生:并集
print(python_s | linux_s) #取只报名了python课程的学生:差集
print(python_s - linux_s) #取只报名了linux课程的学生:差集
print(linux_s - python_s) #取没有同时报名python和linux课程的学:对称差集 print(linux_s ^ python_s)
集合方法
#集合方法
python_s={'egon','alex','钢蛋','老王'}
linux_s={'alex','钢蛋','欧德博爱','艾里科四'} print(python_s.intersection(linux_s))# 交集:python_s & linux_s print(python_s.union(linux_s))#并集:| print(python_s.difference(linux_s)) #python_s-linux_s print(python_s.symmetric_difference(linux_s))# 对称差集,
python_s ^ linux_s python_s={'egon','alex','钢蛋','老王'}
linux_s={'alex','钢蛋','欧德博爱','艾里科四'}
python_s.difference_update(linux_s)
print(python_s)
集合操作类型
s1={'a',1}
s1.add(1) #追加一项
print(s1) s1.discard('a') #如果在 set “s”中存在元素 x, 则删除
s1.discard('b')
print(s1) s1.remove('bbbbbbb') #移除
print(s1) s1={'a',1,'b','c','d'}
print(s1.pop()) #随机删除
总结
s.update(t)
s |= t
返回增加了 set “t”中元素后的 set “s”
s.intersection_update(t)
s &= t
返回只保留含有 set “t”中元素的 set “s”
s.difference_update(t)
s -= t
返回删除了 set “t”中含有的元素后的 set “s”
s.symmetric_difference_update(t)
s ^= t
返回含有 set “t”或者 set “s”中有而不是两者都有的元素的 set “s”
s.add(x)
向 set “s”中增加元素 x
s.remove(x)
从 set “s”中删除元素 x, 如果不存在则引发 KeyError
s.discard(x)
如果在 set “s”中存在元素 x, 则删除
s.pop()
删除并且返回 set “s”中的一个不确定的元素, 如果为空则引发 KeyError
s.clear()
删除 set “s”中的所有元素
二、布尔类型:
True和False
print(type(True))
count=10
print(bool(count > 10))
#所有的数据类型自带布尔值,只有0,None,空的布尔值为False
l=[]
if len(l) == 0:
print('列表为空') print(bool(l))
if not l: #bool(l)
print('列表为空')
字符串
定义:它是一个有序的字符的集合,用于存储和表示基本的文本信息,‘’或“”或‘’‘ ’‘’中间包含的内容称之为字符串
特性:
1.只能存放一个值
2.不可变
3.按照从左到右的顺序定义字符集合,下标从0开始顺序访问,有序
补充:
1.字符串的单引号和双引号都无法取消特殊字符的含义,如果想让引号内所有字符均取消特殊意义,在引号前面加r,如name=r'l\thf'
2.unicode字符串与r连用必需在r前面,如name=ur'l\thf'
Python基础(4)_集合、布尔类型的更多相关文章
- python基础操作_集合_三元运算
#使用操作文件的时候,可以使用with函数#with open('E:\info.txt','a+') as fr#fr这个值可以是任意值# :#for line in fr:'''with open ...
- python基础——数字&集合&布尔类型
Python的核心数据类型 内置对象 对象类型 例子 数字 123,3.1415,3+4j,Decimal(小数),Fraction(分数) 字符串 'dodo',"guido's" ...
- 『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基础教程_学习笔记19:标准库:一些最爱——集合、堆和双端队列
版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/signjing/article/details/36201499 标准库:一些最爱 集合.堆和双端队 ...
- Python基础:05集合类型
Python中,集合对象是一组无序排列的可哈希的值.所以集合成员可以做字典中的键.集合中的元素都是唯一的. 集合(sets)有两种不同的类型,可变集合(set) 和 不可变集合(frozenset). ...
- Python基础(2)--对象类型
Python使用对象模型来存储数据.构造任何类型的值都是一个对象 所有的Python对象都拥有三个特性:身份.类型.值 身份: 每一个对象都有一个唯一的身份来标志自己,任何对象的身份可以使用内建函数i ...
- python基础(1) 变量类型
变量赋值: python中的变量不需要类型声明 每个变量在使用前必须赋值,变量赋值以后才会被创建 变量在内存中创建时,包括变量的标识.名称和数据这些信息. EX: #!/usr/bin/python ...
随机推荐
- 添加用户-查看用户列表-禁止默认root登陆
程序小屌丝狒狒: (Q971751392) linux添加用户 adduser feifei passwd [用户名] 设置密码 可以查看所有用户的列表 cat /etc/passwd w 可以查看 ...
- 「日常训练」 Mike and Frog (CFR305D2C)
题意与分析 (Codeforces 548C) 我开始以为是一条数学题,死活不知道怎么做,无奈看题解,才知这是一条暴力,思维江化了- - 题意大概是这样的: 两个东西的初始高度分别为h1,h2&quo ...
- python csv 模块的使用
python csv 模块的使用 歌曲推荐:攀登(live) csv 是用逗号分隔符来分隔列与列之间的. 1. csv的写入 1.简单的写入,一次写入一行 import csv with open(& ...
- 让PC版网站在移动端原样式显示
一般PC网站在移动端显示效果往往和PC版原样式不同,为了在移动端下还原原PC站样式,可以采用以下方式解决: 1) 去掉页头的: <meta name="viewport" c ...
- MySQL性能分析和优化-part 1
MySQL性能优化 平时我们在使用MySQL的时候,怎么评估系统的运行状态,怎么快速定位系统瓶颈,又如何快速解决问题呢? 本文总结了多年来MySQL优化的经验,系统介绍MySQL优化的方法. OS性能 ...
- 深度学习anchor的理解
摘抄与某乎 anchor 让网络学习到的是一种推断的能力.网络不会认为它拿到的这一小块 feature map 具有七十二变的能力,能同时从 9 种不同的 anchor 区域得到.拥有 anchor ...
- SVM知识点
SVM(Support Vector Machine),支持向量机,有监督学习模型,一种分类模型.在特征空间(输入空间为欧式空间或离散集合,特征空间为欧式空间或希尔伯特空间)中寻找间隔最大化的分离超平 ...
- 甲级1002 A+B for Polynomials (25)
题目描述: This time, you are supposed to find A+B where A and B are two polynomials. Input Each input fi ...
- Java开发环境配置时的dt.jar与tools.jar是什么(转载)
你了解dt.jar吗 很多人在初学Java的时候,都要配置环境变量.在配置CLASSPATH的时候,都会加上一个当前目录.,还有两个jar:dt.jar和tools.jar.其实好多人都不了解这两个j ...
- linux基础优化
[root@moban oldboy]# for oldboy in `chkconfig --list |grep "3:on" |awk '{print $1}' |grep ...