Python集合和字符串及练习
集合
认识集合
1.认识集合(set)
- 集合是容器型数据类型,将{}作为容器的标志里面多个数据用逗号隔开:{数据1, 数据2, 数据3,…}
- 可变的(支持增删改);无序(不支持下标操作)
- 元素的要求:
- 必须是不可变的数据
- 元素是唯一
# 空集合
set1 = set()
print(type(set1), len(set1))# 集合是无序的
print({1, 2, 3} == {3, 2, 1}) # True# 集合元素必须是不可变类型的数据
set1 = {1, 'acb', True, (10, 20)}
print(set1)# set2 = {1, 'acb', True, [10, 20]} # 报错!# 集合元素是唯一
set3 = {10, 20, 10, 20, 30, 10}
print(set3) # {10, 20, 30}names = ['张三', '李四', '张三', '王五', '张三']
print(set(names))
2.集合的增删改查(不重要)
查 - 只能遍历
补充:用for循环遍历无序序列的时候,系统在遍历之前会自动将无序序列转换成列表,然后再遍历列表
增
- 集合.add(元素) - 添加指定元素
- 集合.update(序列) - 将序列中所有的元素都添加到集合中
删
集合.remove(元素)
3.数学集合运算
python中使用的集合和数学集合是一个东西,并且支持数学集合运算
python支持的数学集合运算:交集(&)、并集(|)、差集(-)、对称差集(^)、子集(>=、<=)、真子集(>、<)
交集 - 获取两个集合的公共部分
并集 - 将两个集合合并成一个集合
差集
集合1 - 集合2 - 获取集合1中去掉包含在集合2中的部分剩下的部分
对称差集 - 将两个集合合并然后去掉公共部分
子集和真子集
- 集合1 > 集合2 - 判断集合2是否是集合1的真子集
- 集合1 < 集合2 - 判断集合1是否是集合2的真子集
set1 = {1, 2, 3, 4, 5}
set2 = {3, 4, 5, 6, 7, 8}print(set1 & set2) # {3, 4, 5}print(set1 | set2) # {1, 2, 3, 4, 5, 6, 7, 8}print(set1 - set2) # {1, 2}
print(set2 - set1) # {8, 6, 7}print(set1 ^ set2) # {1, 2, 6, 7, 8}print({1, 2} < {1, 2, 3}) # True
print({100, 200, 300, 400, 1, 2} > {1, 2}) # True# {1, 2, 3} 真子集: {}、{1}、{2}、{3}, {1, 2}、{1, 3}、{2, 3}
# {1, 2, 3} 子集: {}、{1}、{2}、{3}, {1, 2}、{1, 3}、{2, 3}, {1, 2, 3}
# 练习:用三个集合表示三门学科的选课学生姓名(一个学生可以同时选多门课)
python = {'stu1', 'stu3', 'stu4', 'stu6', 'stu9', 'stu10'}
java = {'stu2', 'stu3', 'stu5', 'stu6', 'stu9', 'stu10'}
h5 = {'stu2', 'stu4', 'stu6', 'stu7', 'stu8', 'stu10'}# 1. 求选课学生总共有多少人
set1 = python | java | h5
print(len(set1))# 2. 求只选了第一个学科的人的数量和对应的名字
set2 = python - java - h5
print(set2)# 5. 求选了三门学生的学生的数量和对应的名字
set3 = python & java & h5
print(set3)# 3. 求只选了一门学科的学生的数量和对应的名字
set4 = python ^ java ^ h5 - set3
print(set4)# 4. 求只选了两门学科的学生的数量和对应的名字
set5 = set1 - set3 - set4
print(set5)
字符串
字符串和字符
1.什么是字符串(str)
- 字符串是容器型数据类型;将’’、""、’’’’’’、""""""作为容器的标志,引号里面的每一个符号都是字符串的元素(字符串的元素又叫字符)
- 不可变的(不支持增删改)、有序的(支持下标操作)
- 字符串的元素:一切符号都可以作为字符串的元素,字符串的元素又叫字符。字符分为两种:普通字符和转义字符
# 三个引号和一个引号的区别:
str1 = 'abcsdfa'
str2 = "abc123"str3 = '''abc123
阿士大夫和
阿士大夫和
爱撒娇是'''str4 = """man爱斯达克加分号asd阿萨德发卡号阿萨德发卡号
"""
print(type(str3), type(str4)) # <class 'str'> <class 'str'># 空串
str5 = ''
print(len(str5)) # 0str6 = ' '
print(len(str6)) # 1# 字符可以是任何符号
str7 = 'sfhJAMF234沙士大夫~!@#$%([}❀
Python集合和字符串及练习相关推荐
- python集合加个逗号_8.Python集合与字符串
高级变量类型 目标 列表 元组 字典 字符串 公共方法 变量高级 知识点回顾 Python 中数据类型可以分为 数字型 和 非数字型 数字型 整型 (int) 浮点型(float) 布尔型(bool) ...
- python集合应用场景_8.Python集合与字符串
高级变量类型 目标 列表 元组 字典 字符串 公共方法 变量高级 知识点回顾 Python 中数据类型可以分为 数字型 和 非数字型 数字型 整型 (int) 浮点型(float) 布尔型(bool) ...
- python内置函数可以返回列表元组_Python内置函数()可以返回列表、元组、字典、集合、字符串以及range对象中元素个数....
Python内置函数()可以返回列表.元组.字典.集合.字符串以及range对象中元素个数. 青岛远洋运输有限公司冷聚吉船长被评为全国十佳海员.()A:错B:对 有源逆变是将直流电逆变成其它频率的交流 ...
- python基础语法合集-Python基础语法(四)—列表、元组、字典、集合、字符串
列表 基本概念列表是有序的元素集合,所有元素放在一对中括号中,用逗号隔开,没有长度限制: 列表索引值以0为开始值,-1为从未尾的开始位置. 列表可以使用+操作符进行拼接,使用*表示重复. 当列表元素增 ...
- python总结字典集合列表_python 列表,元组,字典,集合,字符串相互转换
本文主要介绍列表,元组,字典,集合以及和字符串之间的相互转换. 1. 列表与元组的互换 # 将列表转化为元组 li = [1, 2, 3] t = tuple(li) print(t, type(t) ...
- python中求包含5的数_Python 内置函数 ( ) 可以返回列表、元组、字典、集合、字符串以及 range 对象中元素个数。_学小易找答案...
[简答题]实例1:求两数相除的结果. 先后输入2个数据,计算第一个数除以第二个数的结果. 要求能够处理输入数据为非数字.除数为零.文件末尾EndOfFile 和用户使用Ctrl + C 命令终止程序等 ...
- python列表添加字符串_2.python基础之—列表,元组,字典,集合,字符串的使用方法...
一.关于python序列的简介. python里面的序列大部分都可以执行,索引,切片,加,乘,检查长度,以及检查某个成员是否存在,甚至还可以找出这个序列中最小的元素和最大的元素,并且序列都是可迭代的. ...
- python定义字典列表_Python基础语法(四)—列表、元组、字典、集合、字符串
列表 基本概念列表是有序的元素集合,所有元素放在一对中括号中,用逗号隔开,没有长度限制: 列表索引值以0为开始值,-1为从未尾的开始位置. 列表可以使用+操作符进行拼接,使用*表示重复. 当列表元素增 ...
- python 元组 列表 字典区别_Python列表、元组、字典、集合、字符串的异同总结
1.数据类型 列表.元组.字典.集合.字符串均属于python3的标准数据类型. 字符串和元组属于不可变数据,即创建后不可修改. 列表.字典.集合属于可变数据,即创建后可以修改元素. 2.创建有元素的 ...
最新文章
- 使用logminer进行审计 Audit by using logminer
- Unity3D去掉全屏时的屏幕黑边
- system函数和fork-exec机制
- 从《黎明杀机》看非对称对抗游戏的魅力
- MFC和QT等UI框架的特点
- 【Alpha阶段汇总】成果展示与体验总结
- 蓝桥杯基础模块8_2:串口进阶
- Activity的LaunchMode和taskAffinity
- 程序员面试金典 - 面试题 01.03. URL化(字符串)
- 局部变量和成员变量的区别
- django xadmin 集成DjangoUeditor富文本编辑器
- IntelliJ IDEA 中 右键新建时,选项没有Java class
- 基于Python的面部表情识别分析系统
- IEEE 浮点数编码规则
- STM32简介(系统结构、引脚定义……)
- flask-uploads
- 用计算机计算勾股定理,勾股定理电脑计算器
- 4.widows对象
- php silk文件转换mp3,微信小程序silk录音文件转mp3
- 红米note9pro和华为Nova8哪个好 红米note9pro和华为Nova8哪个更加值得入手
热门文章
- 成都计算机博士点,2017学位授权审核结果公示!快看四川高校新增哪些博士点?...
- 千兆宽带只剩下百兆了,记录一次排查过程
- 像素是什么意思,像素与分辨率的区别
- 浔阳江头夜送客,枫叶荻花秋瑟瑟——python标准输入、标准输出和注释
- 互联网行测笔试题之最头疼的找规律
- 一起去追寻那大漠孤烟
- 二选一的时候到了,Qt Widgets 还是 Qt Quick ? 致Qt开发伙伴
- cpld xilinx 定义全局时钟_Xilinx+CPLD介绍
- Leetcode 875:爱吃香蕉的珂珂 Koko Eating Bananas
- 22考研清华905机械设计基础上岸经验分享