Ich schreibe diese Frage, weil ich nicht sicher bin mit der Verwendung von "Struktur-Arrays". Ich habe eine Matrix von der Tastatur mit verschiedenen Eingaben (Integer, Float, etc.) mit dem Befehl "dtype" gemacht. Dann möchte ich wiederholte Elemente in der Spalte "p" und "q" finden, wenn ich diese Elemente habe, möchte ich die entsprechenden Elemente aus der Spalte "z" summieren. Vielen Dank. Das ist mein Python-Code:Wie verwendet man Struktur-Arrays in Python?
from numpy import *
from math import *
from cmath import *
from numpy.linalg import *
number_lines_=raw_input("Lines:")
numero_lines=int(number_lines_)
ceros=zeros((numero_lines,1))
dtype=([('p',int),('q',int),('r',float),('x',float),('b',complex),('z',complex),('y',complex)])
#print dtype
leng=len(dtype)
#print leng
yinfo=array(ceros,dtype)
#print shape(yinfo)
if numero_lines>0:
for i in range(numero_lines):
p_=raw_input("P: ")
p=int(p_)
if p>0:
yinfo['p'][i]=p
#print yinfo
q_=raw_input("Q: ")
q=int(q_)
if q>0 and q!=p:
yinfo['q'][i]=q
r_=raw_input("R: ")
r=float(r_)
yinfo['r'][i]=r
x_=raw_input("X: ")
x=float(x_)
yinfo['x'][i]=x
b_=raw_input("b:")
b=complex(b_)
yinfo['b'][i]=complex(0,b)
yinfo['z'][i]=complex(yinfo['r'][i],yinfo['x'][i])
yinfo['y'][i]=1./(yinfo['z'][i])
# print "\n"
print yinfo
print type(yinfo)
print yinfo.shape