python集合的元素可以是元组_Python之元组和集合

元组

1.元组的表示方法:用一对圆括号括起来的数据,为一组元组数据 (),不带小括号的可以表示一个元组数,如下:

#元组的两种表示方法

tup=1,2,3tup1=(1,2,3)print(type(tup))print(type(tup1))

输出结果:

2.元组与列表一样,也是一种序列,但是元组内的元素是不可修改的

#修改一个列表元素

tup1=[1,2,3]

tup1[1]='nihao'

print(tup1)

输出结果:

[1, 'nihao', 3]#修改一个元组元素

tup1=(1,2,3)

tup1[1]='nihao'

print(tup1)

输出结果:

TypeError:'tuple' object does not support item assignment(元组不能修改元素)

3.如果元组中只有一个元素,需要在元素后面添加一个逗号,如果不添加逗号,则就不是一个元组,添加的数据是什么类型返回结果就是什么类型的数据

#元组内为一个元素时,加逗号和不加逗号的区别

tup=(1)

tup1=(1,)print(type(tup))print(type(tup1))

输出结果:

4.元组是有序的,可以通过索引操作取值

tup=(1,23,45,'nihao',(1,2),{'name':"蓝天"},[3,4,5])print(len(tup))print(tup[5])print(tup[3])print(tup[2])

输出结果:7{'name': '蓝天'}

nihao45

5.元组是不可修改的序列,但是可以利用切片对元组内的数据进行更新

#向元组内添加一组数据,使用切片实现元组连接

tup=(1,23,45,'nihao',(1,2),{'name':"蓝天"},[3,4,5])

tup1=("小猴子","大灰狼")print(tup[:4]+tup1+tup[4:])

输出结果:

(1, 23, 45, 'nihao', '小猴子', '大灰狼', (1, 2), {'name': '蓝天'}, [3, 4, 5])

6.删除元组数据(只能使用del() 进行删除)

tup=(1,23,45,'nihao',(1,2),{'name':"蓝天"},[3,4,5])print(tup)del(tup) #删除元组,是直接删除,而不是清空

print(tup)

输出结果:

(1, 23, 45, 'nihao', (1, 2), {'name': '蓝天'}, [3, 4, 5])

NameError: name'tup' is not defined (已被删除,所以该元组不存在)

7.元组的拆包和解包(变量必须与元组内的元素个数一一对应,元组内有多少个元素,就有多少个变量去一一接收,否则会报错)

#元组的拆包和解包,使用方法如下:

tup0,tup1,tup2,tup3,tup4,tup5,tup6=(1,23,45,'nihao',(1,2),{'name':"蓝天"},[3,4,5])print(tup5)

输出结果:

{'name': '蓝天'}

8.元组的相关操作符

重复操作符 * tuple*3 将元组内的元素重复输出多少次

逻辑操作符号 and or

成员关系操作符 in not in

拼接操作符+ (拼接操作符两边的元素类型要一致,只能拼接元组类型,其他类型会报错)

关系操作符 (>,<,>=,<=,==)

9.什么时候用元组

.在信息不能进行修改的情况下,用元组

元组的性能要强于列表(测试的时候感受不到,基本上用列表就够 了)

集合

1.集合的表示方法:{ } 使用花括号包裹起来的数据为集合

例如:{1,2,3,4,'python','你好'}

2.集合和字典的区别:集合没有key,而字典有

3.集合是无序的可变的,所以不能使用索引进行取值

4.集合的主要作用:去重 (set会将重复的元组覆盖掉,从而达到去重的效果) ❥(^_-) 面试中,可能会问到

#集合可以存储元组,但是不能存储字典和列表

my_set={"python",1,23,3,3,3,56,7,'python','你好',("name","xiaoha")}print(my_set)print(len(my_set))

输出结果:

{1, 3, 'python', 7, '你好', ('name', 'xiaoha'), 23, 56}8

#集合可以对列表中的重复元素进行去重

my_list1=["python",1,23,3,3,3,56,7,'python','你好',("name","xiaoha")]print(my_list1)print(set(my_list1))print(list(set(my_list1))) #将去重后的集合再转换为列表输出,就达到列表去重的效果

输出结果:

['python', 1, 23, 3, 3, 3, 56, 7, 'python', '你好', ('name', 'xiaoha')]

{1, '你好', 3, 7, 'python', ('name', 'xiaoha'), 23, 56}

['python', 1, 3, 7, 23, 56, ('name', 'xiaoha'), '你好']

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值