1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 在python是什么意思_Python a=b是什么意思?

在python是什么意思_Python a=b是什么意思?

时间:2023-12-09 18:15:28

相关推荐

在python是什么意思_Python a=b是什么意思?

解释

iand中的i意味着in-place,因此它是&的在位运算符。^{{cd4>如果实现了x = x & y相同。在

内置示例,集合:

它主要用于更新内置集合类型的交集:>>> a = set('abc')

>>> a &= set('cbe')

>>> a

set(['c', 'b'])

这与:

^{pr2}$

它非常类似于调用set.intersection_update方法,并将在控制流中使用,就像对任何对象或变量进行就地更新一样(如果对象是不可变的)。在

未实现的内置示例

不太常用的不可变冻结集对象将在就地更新时在内存中被替换,变量名将指向内存中的新对象。在>>> a = frozenset('abc')

>>> a &= set('bce')

>>> a

frozenset({'c', 'b'})

在本例中,因为frozenset没有实现__iand__方法>>> a = frozenset('abc')

>>> a.__iand__(set('cbe'))

Traceback (most recent call last):

File "", line 1, in

a = frozenset('abc'); a.__iand__(set('cbe'))

AttributeError: 'frozenset' object has no attribute '__iand__'

它与a = a & set('bce')

*(我说几乎是,因为如果你检查字节码,你会发现底层实现对集合和冻结集的处理是一样的,即使冻结集没有__iand__,而集合有,因为至少对于编译的函数来说,每次调用INPLACE_AND。)

内置示例,二进制标志:

与集合类似,我们可以使用&=来更新二进制选项标志的交集,其中True的值是1。下面,我们证明二进制数1110和{}的“binary AND”(类似于交集)是1010:>>> option_flags = int('1110', 2)

>>> option_flags

14

>>> option_flags &= int('1011', 2)

>>> option_flags

10

>>> bin(option_flags)

'0b1010'

由于int对象是不可变的,就像frozenset示例一样,这实际上只会将变量option_flags重新分配给新计算的值。在

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。