初始化Python对象的随机属性

时间:2014-06-01 15:11:19

标签: python oop

我的代码的简化版本,生成两个具有随机状态的对象,这些状态从圆圈中统一选取状态。问题是检查对象的状态返回相同的随机点。有什么问题?

import numpy as np
def uniform_spherical_sample(dim=2,size=1):
    """returns a sample of size `size` uniformly from a hypersphere with dimension `dim`"""
    a=np.random.multivariate_normal(mean=np.zeros(dim),cov=np.identity(dim),size=size)
    normed_a=a/np.linalg.norm(a,axis=1)[...,None]
    return normed_a
class a:
    def __init__(self,state=uniform_spherical_sample()):
        a.state=state
obj=a()
obj2=a()
print obj.state
print obj2.state

两个对象的输出始终是相同的值。我必须强调,运行该函数两次会给出不同的值。

0 个答案:

没有答案