如何从输出中删除<内置函数数组>



下面是我的程序的一部分,如何从输出中删除?它能被移除吗?

还是内置的?因为我打算在将其转换为二维矩阵后将其保存为文本文件。

此外,我想要重塑1D阵列";最后的";作为一个2D 30*5矩阵,我该怎么做(当然这里还没有150个元素,它还需要由不同的主循环添加(

edited:这里stmat是一个由80个元素组成的数组,对于这个特殊的元素,t=8迭代

t = n
t = int(t)
print(t)
import numpy
final = numpy.array
arr = ['1','2','3','5','7']
for p in arr :
sum = 0 
p = int(p)
for j in range(t) :
sum = sum + float(stmat[p])
p = p + 10
avg = sum/n
final =  numpy.append (final, avg )
print(avg)   
print(final)

我得到以下输出

75.75
[<built-in function array> 75.75]
73.875
[<built-in function array> 75.75 73.875]
93.625
[<built-in function array> 75.75 73.875 93.625]
7.0
[<built-in function array> 75.75 73.875 93.625 7.0]
29.368750000000002
[<built-in function array> 75.75 73.875 93.625 7.0 29.368750000000002] 

numpy.array是一个函数,final = numpy.array将函数本身分配给变量。现在调用final()的作用与调用numpy.array()的作用相同。

如果您想创建一个初始的空numpy数组,您应该执行类似final = numpy.array([])的操作。

列表附加比np.append:更好

final = []   # empty list
arr = ['1','2','3','5','7']
for p in arr :
sum = 0 
p = int(p)
for j in range(t) :
sum = sum + float(stmat[p])
p = p + 10
avg = sum/n
final.append( avg )
print(avg)   
print(final)

使用起来更快更容易。

最新更新