一行中的分配和加法

时间:2019-10-26 03:03:44

标签: python python-3.x

python中是否存在以下等效项?

ICMP_SEQUENCE_NUM   = self.sequence_num ++

也就是说,要分配ICMP_SEQUENCE_NUM = self.sequence_num,然后再将self.sequence_num加一?

1 个答案:

答案 0 :(得分:2)

尽管无法直接执行后缀或前缀操作,但是您可以使用新的海象运算符:=(赋值表达式)来接近。这仅在Python> = 3.8中可用:

# works
self.sequence_num = (ICMP_SEQUENCE_NUM := self.sequence_num) + 1

请注意,您不能在对象属性上使用海象运算符,因此无法进行以下操作

# does not work
ICMP_SEQUENCE_NUM = (self.sequence_num := self.sequence_num + 1) - 1