python3>2>1的值为true吗

大家好,小编来为大家解答以下问题,python中3//2的值为1.5,python中2**3等于多少,今天让我们一起来看看吧!

1 set的定义

dict,list,tuple的定义方法把大中小括号用完了,创建一个空的set就只能用set()了:

>>> s = set()

>>> type(s)

当然还有一种创建包含了元素的set,仍然可以使用大括号{}来初始化,这时候解释器会根据{} 内部的组织形式自动推导为set还是dictGPT改写

>>> s={1:10,2:20,3:30}

>>> type(s)

 #逗号分隔的是一组冒号隔开的数据,所以解释器推导为字典。

>>> s={1,2,3}

>>> type(s)

#逗号分隔的是单个的数据,所以解释器推导为集合

2 set的元素类型

直接上代码实验:

>>> s = {1,2,3}

>>> print(s)

{1, 2, 3}

>>> s = {1.1, 2.2 ,3.3}

>>> print(s)

{1.1, 2.2, 3.3}

>>> s = {‘juzicode’,’桔子code’}

>>> print(s)

{‘桔子code’, ‘juzicode’}

>>> s = {(1,2,3),(4,5,6)}

>>> print(s)

{(1, 2, 3), (4, 5, 6)}

>>> s ={[1,2,3],[4,5,6]}

Traceback (most recent call last):  File “”, line 1, in

TypeError: unhashable type: ‘list’

>>> s = { {‘a’:1,’b’:2}  }

Traceback (most recent call last):  File “”, line 1, in

TypeError: unhashable type: ‘dict’

从实验结果看,set的元素类型不能是list和dict,因为他们是unhashable类型的数据,这和字典的key类型的要求是一样的。

【实验】定义一个set a,将这个a作为一个元素放到set b中,看下是什么结果?

3计算长度len(s)

计算长度和str,list,tuple,dict一样,使用len()计算set的长度:

>>> s={1,2,3}

>>> len(s)3

4添加/删除元素

s.add(x):往set中增加x元素,如果x已经存在,set不会发生变化,如果x不存在,set元素增加x;

s.remove(x):删除set中x元素,如果x不存在,则抛异常;

s.pop():随机删除一个元素,注意括号中是没有数据的。

s1.update(s2):s2的元素拆成单个后往s1中添加,类似list的extend()

源码print(‘—–欢迎来到’)

print(‘—–公众号: juzicode/桔子code\n’)

print(‘set实验:添加删除元素’)

s={1,2,3}

print(‘初始s: ‘,s)

s.add(1)

print(‘add(1)后的set: ‘,s)

s.add(4)

print(‘add(4)后的set: ‘,s)

s.remove(1)

print(‘remove(1)后的set: ‘,s)

#s.remove(5)

#print(‘remove(5)后的set: ‘,s)

s.pop()print(‘pop()后的set: ‘,s)

s.pop()print(‘pop()后的set: ‘,s)

s.update({7,8,9})

print(‘update(7,8,9)后的set: ‘,s)

结果—–欢迎来到

—–公众号: juzicode/桔子code

set实验:添加删除元素初始

s:  {1, 2, 3}

add(1)后的set:  {1, 2, 3}

add(4)后的set:  {1, 2, 3, 4}

remove(1)后的set:  {2, 3, 4}

pop()后的set:  {3, 4}

pop()后的set:  {4}

update(7,8,9)后的set:  {4, 7, 8, 9}

5并集/差集/交集

既然是集合,就会存在求并集、差集和交集的操作:

s1.difference(s2):计算s1有s2没有的元素;

s1.union(s2):计算s1和s2的并集,如果有元素重叠,只保留一个元素;

s1.intersection(s2):计算s1和s2的交集;

s1.symmetric_difference(s2):计算s1和s2的对称差集,对称差集就是2个集合的并集减交集;

源码s1={1,2,3,4,5}

s2={4,5,6}

print(‘初始s1: ‘,s1)

print(‘初始s2: ‘,s2)

sd = s1.difference(s2)

print(‘s1和s2的差集: ‘,sd)

su = s1.union(s2)

print(‘s1和s2的并集: ‘,su)

si = s1.intersection(s2)

print(‘s1和s2的交集: ‘,si)

ssd = s1.symmetric_difference(s2)

print(‘s1和s2的对称差集: ‘,ssd)

结果初始s1:  {1, 2, 3, 4, 5}

初始s2:  {4, 5, 6}

s1和s2的差集:  {1, 2, 3}

s1和s2的并集:  {1, 2, 3, 4, 5, 6} #重复元素只保留同一个

s1和s2的交集:  {4, 5}

计算差、并、交、对称差集还可以使用符号来完成,上面例程中利用符号计算的结果是:

源码print(‘s1-s2: ‘,s1-s2)   #差集

print(‘s1|s2: ‘, s1|s2)    #并集

print(‘s1&s2: ‘, s1&s2)  #交集

print(‘s1^s2: ‘, s1^s2)   #对称差集

结果s1-s2:  {1, 2, 3}

s1|s2: {1, 2, 3, 4, 5, 6}

s1&s2: {4, 5}

s1^s2 : {1, 2, 3, 6}

计算并集是不是也可以用加号,答案却是否定的,set不支持用加号进行求并集操作。

print(‘s1+s2: ‘,s1+s2)

TypeError: unsupported operand type(s) for +: ‘set’ and ‘set’

6判断

s1.isdisjoint(s2):s1和s2的元素是否都不相同,如果不相同返回True;

s1.issubset(s2):s1是否是s2的子集

s1.issubset(s2):s1是否是s2的超集

源码s1={1,2,3}

s2={1,2,3,4,5,6}

print(‘初始s1: ‘,s1)

print(‘初始s2: ‘,s2)

print(‘s1和s2元素都不一样: ‘,s1.isdisjoint(s2))

print(‘s1是否是s2的子集: ‘,s1.issubset(s2))

print(‘s1是否是s2的超集: ‘,s1.issuperset(s2))

结果—–欢迎来到—–公众号: juzicode/桔子code

初始s1:  {1, 2, 3}

初始s2:  {1, 2, 3, 4, 5, 6}

s1和s2元素都不一样:  False

s1是否是s2的子集:  True

s1是否是s2的超集:  False


原文地址1:https://blog.csdn.net/weixin_39653361/article/details/110837164
参考资料:python中用turtle画一个圆形 https://blog.csdn.net/SXIAOYAN_/article/details/140061099

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值