问题描述
我对Python中的函数参数的理解是,直到函数调用,它们就像空对象一样。例如。
def square(x): #where x is an empty var defined here.
return x*x #for the scope of this function
那么,在“ NamedTuple”是我假设的回调函数的情况下,它如何工作?返回值“ NamedTuple”是否用作类Car()的参数?
>>> from typing import NamedTuple
>>> class Car(NamedTuple):
... color: str
... mileage: float
... automatic: bool
>>> car1 = Car("red",3812.4,True)
>>> # Instances have a nice repr:
>>> car1
Car(color='red',mileage=3812.4,automatic=True)
解决方法
class Car(NamedTuple):
是一个类声明,而不是函数调用。 NamedTuple
是Car
派生的类。
否,NamedTuple
不是函数,而是类。这称为继承力(或子类化),更多信息here。