Seite 1 von 1

delete()?

Verfasst: Mittwoch 8. April 2009, 12:06
von Irmchen
Hallo!
Ich möchte aus einer Zero-Array, die ich vorher auf eine bestimmte Länge definiert habe, bestimmte Elemente löschen. Einzelne Elemente kann ich löschen mit delete(array, [index]), funktioniert aber leider nicht, wenn ich alle Elemente von einem Index bis zum Ende löschen möchte (z.B. [7:]).
Habt ihr ne Idee, wie das gehen könnte?

(del array[element] funktioniert bei ner zero-array nicht)

Danke schön!

Verfasst: Mittwoch 8. April 2009, 12:11
von hendrikS

Code: Alles auswählen

a=[0,1,2,3,4,5,6]
a=a[:3]
print a

Verfasst: Mittwoch 8. April 2009, 12:32
von name
Was ist ein Zero-Array? :?

Verfasst: Mittwoch 8. April 2009, 12:33
von Irmchen
Zero-Array ist eine Array in der nur Nullen stehen...
Ich werd mal die Idee von hendrikS umsetzen. Danke schön!

Verfasst: Mittwoch 8. April 2009, 12:52
von name
Irmchen hat geschrieben:Zero-Array ist eine Array in der nur Nullen stehen...
Ich werd mal die Idee von hendrikS umsetzen. Danke schön!
Du weisst schon das arrays und listen was unterschiedliches in Python sind, oder?

Verfasst: Mittwoch 8. April 2009, 13:14
von nemomuk
Was soll dein "Zero-Array" denn bezwecken? Speicher auslasten?

Verfasst: Mittwoch 8. April 2009, 13:25
von CM
"delete" gibt es in numpy. Gelegentlich braucht man leere arrays zum rechnen. Falls ich richtig rate, dass es sich um numpy-arrays handelt:
- ist numpy.zeros erneut aufrufen etwas effizienter als Slicing und Zuweisung wie von hendrikS gezeigt.
- wäre es noch effizienter, direkt die richtige Größe zu erzeugen ;-).

@Irmchen: Falls ich zumindest ungefähr richtig geraten habe, wäre es zumindest in Zukunft angebracht zu erzählen, von welchen Objekten die Rede ist. ;-)

HTH
Christian