我有一些Python代码,直到昨天才开始工作,现在遇到了一些浮动问题,我一直没有成功地追踪到这些问题。我试图用np.mean计算一个列表的平均值,但是我得到了一个错误,声明:AttributeError: 'str' object has no attribute 'mean'
然而,如果我打印出冒犯性的平均计算:
volumetric_power = [x/y for x,y in zip(mcnp_calculated_power,mcnp_vol)]
print volumetric_power
normalized_power = [x/np.mean(volumetric_power) for x in volumetric_power]我得到的输出是一个预期的浮点数列表(我是这样计算的):
[3.3999658877707657, 3.4055375518790156, 3.3929180596302109, 3.4015594541910334, 3.415077891066217, ... ]现在,为了绕过这个问题,我最终只需要手工计算平均sum(volumetric_power)/len(volumetric_power),就可以通过这个错误了。然而,在文件的后面,我遇到了一个np.loadtxt错误(这里的相关错误):
get_radial_data(filename,zirc_mesh)
File "./Bicnp.py", line 313, in get_radial_data
data = np.loadtxt(cwd+'/grope.o', usecols=(1,2,3), skiprows=12)
AttributeError: 'str' object has no attribute 'loadtxt'在所有这些之后,我认为错误是一些Python库类型的错误(使用无知的术语),在那里我不知道应该在哪里查找。所有这些昨天都做得很好,我今天做的一件事就是添加python27和python33,它们来自centos-release/ http://wiki.centos.org/AdditionalResources/Repositories/SCL。
谢谢你的帮助。
更新:我忘记提到这是运行Python2.6.6的
发布于 2014-10-22 22:49:47
在代码中的某个位置,您将向np变量分配一个string对象。它替换了以前以该名称导入的numpy模块,并解释了您正在看到的奇怪错误消息(可能在代码的非常不同的部分)。
如果您有一个一致的地方,您要得到错误,尝试打印np附近,看看它有什么价值,然后跟踪您在哪里作出错误的分配。只要为字符串选择一个不同的变量名,您就应该都设置好了。
https://stackoverflow.com/questions/26518360
复制相似问题