Python入门基础 元组 (元组的基础操作)集合的使用(集合的操作)

简介: 元组Python内置的数据结构之一,是一个不可变序列集合:1.Python语言提供的内置数据结构2.与列表、字典一样都属于可变类型序列3.集合是没有value值的字典


元组
Python内置的数据结构之一,是一个不可变序列

不可变序列与可变序列的区别:
不可变序列:字符串、元组
没有增、删、改的操作
可变序列:列表、字典
可以对序列执行增、删、改操作,对象地址不发生更改
元组的创建方式:

元组的创建方式:

直接用小括号

t=("python","hello",90) #定义元组,元组和列表的外貌区别在于括号

使用内置函数tuple(),一般用于类型转换,比如将列表转为元组

t1=tuple(("PYTHON","HELLO",99))

元组里只包含一个元素的需要使用逗号

t2=(10,)
为什么要将元组设计成不可变序列:
1.在多任务环境下,同时操作对象是不需要加锁
2.因此,在程序中尽量使用不可变序列
使用元组的注意事项:
元组中存储的是对象的引用
a.如果元组中的对象本身是不可变对象,,则不能在引用其他对象。
b.如果元组中的对象是可变对象(如列表),则可变对象的引用不允许改变(不可以改变列表类型,可以改变列表里的元素)
元组的遍历:
 

t5=("python","hello",90)
"""第一种获取元组元素的方式,使用索引"""
print(t[0])
print(t[1])
print(t[2])

print(t[3]) #报错,超出了元组的范围,在不知道元组里有多少个元素时,可以使用遍历元组的方法查看元组里有多少个元素

遍历元组:

"""遍历元组"""
for item in t5:

print(item)

主页有更多Python入门基础笔记

​​
集合:
1.Python语言提供的内置数据结构
2.与列表、字典一样都属于可变类型序列
3.集合是没有value值的字典

例:

集合创建方式

ji={996,"python","hello"}

集合中的元素不可以重复,若元素重复则会被覆盖

jihe={1,6,1,2,3,4,5,6,6,1}
print(jihe) #结果为 {1, 2, 3, 4, 5, 6}

第二种创建方式,使用set(),使用这种函数一般都是将别的类型的元素,转为本类型的元素,比如将列表类型元素,转为集合类型元素

s=set(range(5))
print(s)

将列表元素转为集合元素

print(set([1,2,3,4,5]))

输出结果:{1, 2, 3, 4, 5}

将元组转为集合

print(set((1,2,4,4,5,65)))

输出结果:{65, 1, 2, 4, 5} 原因是因为集合是无序数列,而且会把重复的元素去除,只留下一个

集合是无序序列

print(set("python"))

输出结果:{'n', 'h', 't', 'y', 'p', 'o'}

定义空集合(不能直接使用{},否则会定义成字典)

s6=set() #只能这样定义空集合
"""判断集合内是否存在某元素时可以使用in not in"""
t1={10,20,30,40,50,}
print(10 in t1) #True
print(100 in t1) #False
print(10 not in t1) #False
集合的新增操作
add() 新增一个元素
update() 新增多个元素
t1.add(80)
print(t1)

输出结果:{80, 50, 20, 40, 10, 30}

t1.update([90,100,"py"]) #update()函数可以添加多个元素,或者是元组和列表
print(t1)
集合元素的删除操作
调用remove()方法,一次删除一个指定元素,如果指定元素不存在,抛出KeyError
调用discard()方法,一次删除一个指定元素,如果指定的元素不存在不抛异常
调用pop()方法,一次只删除一个任意元素(pop()空格里面不能添加参数,因为是随机删除一个元素,不能指定)
调用clear()方法清空集合
调用函数的方法:
需要用到该函数的元素名 . 函数名() 括号里一般可以填写参数

例:

t1.remove(20) #名为t1的集合,调用remove()函数,删除集合内指定元素20
print(t1)
集合间的关系

一、两个集合是否相等
可以使用运算符==或 !=进行判断
二、一个集合是否是另一集合的子集
可以调用方法issubset进行判断
B是A的子集
三、一个集合是否是另一个集合的超集
可以调用方法issuperset进行判断
A是B的超集
四、两个集合是否没有交集
可以调用方法isdisjoint进行判断
集合的数学操作:
交集
并集
差集
对称差集

交集 使用.intersection() 或 &

s1={10,20,30,40}
s2={20,30,40,50,60}
print(s1.intersection(s2))
print(s1 & s2)

并集

print(s1.union(s2))
print(s1 | s2)

差集

print(s1.difference(s2)) #意思是相减操作,s1集合减去s2集合还剩下什么元素,只会减去相同元素,剩下的不同的元素
print(s1-s2)

对称差集

print(s1.symmetric_difference(s2)) #意思是将两个集合里相同的元素去除,留下两个集合里不同的元素
"""集合生成式"""

s={i*i for i in range(10)}

print(s)

相关文章
|
2天前
|
Python
|
3天前
|
数据挖掘 数据处理 Python
Python编程入门:从基础到实践
【6月更文挑战第26天】这篇文章引导读者逐步学习Python编程,从基础语法如变量、数据类型(整数、浮点数、字符串)到条件语句、循环(if/for/while),再到函数定义和模块导入。通过实例展示了Python在文本处理、数据分析(使用pandas)和Web开发(使用Flask)的应用。学习Python能为初学者开启更广阔的技术领域,如面向对象编程、并发和网络编程等。
|
2天前
|
自然语言处理 编译器 PHP
Python入门
【6月更文挑战第27天】Python入门。
7 3
|
1天前
|
存储 索引 Python
字符串、列表、元组、字典(python)
字符串、列表、元组、字典(python)
|
3天前
python+Pycharm+selenium操作浏览器(Chorme或Edge)
python+Pycharm+selenium操作浏览器(Chorme或Edge)
6 1
|
1天前
|
数据挖掘 Python
python数据分析常用图大集合
python数据分析常用图大集合
|
1天前
|
SQL Java 数据库连接
使用Python通过JDBC操作数据库(达梦数据库)
使用Python通过JDBC操作数据库(达梦数据库)
7 0
|
2天前
|
程序员 API 计算机视觉
技术经验解读:【python自动化】02.pywin32库自动操作键鼠(保姆级代码注释)
技术经验解读:【python自动化】02.pywin32库自动操作键鼠(保姆级代码注释)
|
3天前
|
Python
python3 入门学习笔记
python3 入门学习笔记
4 0
|
3天前
|
Python
python集合
python集合
4 0