NB(注意): # 后面的部分表示输出结果。
第一种:类似于其他语言的中规中矩的赋值方式,代码如下:
class Debug: def __init__(self): self.x1 = 5 self.x2 = 6 def printNum(self): print(f"the value of x1 is: {self.x1}") # the value of x1 is: 5 print(f"the value of x2 is: {self.x2}") # the value of x2 is: 6 if __name__ == "__main__": main = Debug() main.printNum()
class Debug: def __init__(self): self.x1 = 5; self.x2 = 6 def printNum(self): print(f"the value of x1 is: {self.x1}") # the value of x1 is: 5 print(f"the value of x2 is: {self.x2}") # the value of x2 is: 6 if __name__ == "__main__": main = Debug() main.printNum()
可以看到此时我们将两个赋值语句放置在同一行,并用分号隔开,此时也可以成功完成赋值,分号类似于C#语言中结尾的分号的作用,告诉程序当前行执行完毕。
第三种是:赋值语句在一行合并完成,专业术语叫做序列解包 ,代码如下:
class Debug: def __init__(self): self.x1, self.x2 = 5, 6 def printNum(self): print(f"the value of x1 is: {self.x1}") # the value of x1 is: 5 print(f"the value of x2 is: {self.x2}") # the value of x2 is: 6 if __name__ == "__main__": main = Debug() main.printNum()
我们将多个变量名用逗号隔开放在左侧,使用一个赋值号,并将对应想要给与的值放在右侧的相应位置,也用逗号隔开即可,从结果可以看到我们也成功完成了赋值。当要给多个变量赋值的时候推荐使用这种形式。
第四种:当两个变量值相等的时候可以连等赋值,专业术语叫做链式赋值。代码如下:
class Debug: def __init__(self): self.x1 = self.x2 = 5 def printNum(self): print(f"the value of x1 is: {self.x1}") # the value of x1 is: 5 print(f"the value of x2 is: {self.x2}") # the value of x2 is: 5 print(id(self.x1)) # 5952 print(id(self.x2)) # 5952 self.x1 = 7 print(f"the value of x1 is: {self.x1}") # the value of x1 is: 7 print(f"the value of x2 is: {self.x2}") # the value of x2 is: 5 print(id(self.x1)) # 6016 print(id(self.x2)) # 5952 if __name__ == "__main__": main = Debug() main.printNum()
class Debug: def __init__(self): self.x1 = 5 self.x1 += 2 def printNum(self): print(f"the value of x1 is: {self.x1}") # the value of x1 is: 7 if __name__ == "__main__": main = Debug() main.printNum()
上述代码中的 self.x1 += 2的专业术语就是增强赋值,其本身为 self.x1 = self,x1 + 2。
如果大家觉得有用,请高抬贵手给一个赞让我上推荐让更多的人看到吧~
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/223738.html原文链接:https://javaforall.net
