[英]Python - __init__ args
我有以下问题。
class Operacoes(object):
def __init__(self, *args):
self.__numero = args
def get_numero(self) -> int:
return self.__numero
x = Operacoes(10).get_numero()
print(x)
#(10,)
这让我很感兴趣,为什么有人知道怎么告诉我?
args,在第 10 号情况下应该返回一个 int,但返回的是一个元组。
这是因为当您调用get_numero()
方法时,会返回self.__numero
。 当在__init__()
中查看self.__numero
时,它返回args
,它始终是一个元组,即使你只有 1 个参数。
让我们仔细看看语法。 你分配
*args = 10
星号在这里非常重要,因为它会解包元组/列表。 通过 Python 规范args
是一个元组,即使它包含单个元素。
然后, self.__numero
存储一个元组。 当您检索它并打印它时,它仍然是一个元组。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.