python中的数据类型s32_python – ufunc’add’不包含带签名匹配类型的循环dtype(‘S32’)(‘S32’)(‘S32’)...

似乎line [0],line [1],line [2],line [3]是dist_hist的元素. dict_hist是一个numpy.ndarray. dict_hist的元素有一个数字类型(如np.float64)(基于附件中的计算).您正在尝试添加不同类型的元素:np.float64和str.如果要避免此TypeError,可以将line [0],line [1],line [2],line [3]的类型更改为str.

您的代码片段应如下所示:

name_out = "histogram_"+donor+"_"+acceptor+".dat"

f = open(name_out,'w')

f.write('distance d.probability efficiency e.probability')

for line in dist_hist:

f.write(str(line[0])+' '+str(line[1])+' '+str(line[2])+' '+str(line[3]))

f.close()

print "data saved in " +"histogram_"+donor+"_"+acceptor+".dat"

编辑:

你应该替换这段代码:

name_out = "histogram_"+donor+"_"+acceptor+".dat"

f = open(name_out,'w')

f.write('distance d.probability efficiency e.probability')

for line in dist_hist:

f.write(line[0]+' '+line[1]+' '+line[2]+' '+line[3])

f.close()

到这一个:

name_out = "histogram_" + donor + "_" + acceptor + ".dat"

f = open(name_out,'w')

f.write('distance d.probability efficiency e.probability\n')

for line in dist_hist:

f.write(str(line[0]) + ' ' + str(line[1]) + ' ' + str(line[2]) + ' ' + str(line[3]) + '\n')

f.close()

在此之前,字符串被写入一行文件.因为你的数据变量指向空数组,因为我们开始从第二行(它是空的)读取.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值