Python:通过Python函数拖动scipy.stats对象

Python:通过Python函数拖动scipy.stats对象,python,function,statistics,scipy,Python,Function,Statistics,Scipy,我试图在函数中分配一个scipy.statsrv对象并返回它: def Prior(): priorObj = norm(loc=1, scale=1) return priorObj 如何保存rv对象,包括其方法,并通过 previor.pdf() 及 之前的cdf(0.5) 我是否必须复制对象才能通过python函数传递它?创建函数后,您必须调用它并将返回的rv对象分配给以下对象 def Prior(): priorObj = norm(loc=1, scale=1

我试图在函数中分配一个
scipy.stats
rv
对象并返回它:

def Prior():
    priorObj = norm(loc=1, scale=1)
    return priorObj
如何保存
rv
对象,包括其方法,并通过

previor.pdf()

之前的cdf(0.5)


我是否必须复制对象才能通过python函数传递它?

创建函数后,您必须调用它并将返回的
rv
对象分配给以下对象

def Prior():
    priorObj = norm(loc=1, scale=1)
    return priorObj

prior = Prior()

prior.pdf(0.5)
# etc

如果您不调用函数并将其分配给某个对象,而是尝试使用函数本身,那么您将尝试访问函数本身的
pdf
方法,这将引发
AttributeError

谢谢。我的函数调用中缺少括号。我可以跳过prior=prior()步骤并立即调用prior().cdf(0.5)。可以,但如果随后调用
prior().cdf(0.6)
,则必须重新运行函数
prior
,而如果将其保存到
prior
,则该函数可用。我想这取决于您的用例。