Anfängerprobleme

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
infostud
User
Beiträge: 17
Registriert: Donnerstag 13. Mai 2004, 11:12

Hallo,
bin neu auf diesem Gebiet.
Wie kann ich Elemente hinzufügen, wenn noch nicht vorhanden???
Wie lösche ich Elemente, wenn vorhanden???

Was heißt:Menge auf leere Menge setzen??

Bitte um Hilfe
fs111
User
Beiträge: 170
Registriert: Samstag 15. November 2003, 11:42
Kontaktdaten:

Als erstes sollte Dich die Frage interessieren: Wie stelle ich meine Frage in einem Forum, damit die auch jemand versteht, oder anders ausgedrückt: Worum geht es überhaupt?

Grüße

fs111
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Hi infostud,

für Mengen gibts bei Python2.3 das Modul "sets", darin gibt es jedes Element nur einmal!
Ansonst gibts auch bei fürheren Versionen den Type list, darin kann ein Element auch mehrfach vorhanden sein.

Methoden sind bei Beiden ähnlich, bei Set muss zum Hinzufügen die Methode add verwendet werden bei list die Methode append.

Code: Alles auswählen

from sets import Set

myset = Set([1,2,3])
print "myset =", myset
myset.add(4) # Element hinzufügen
print "myset.add(4) ->", myset
myset.remove(3) # Element entfernen
print "myset.remove(3) ->", myset
print
mylist = list([1,2,3])
print "mylist =", mylist
mylist.append(4) # Element hinzufügen
print "mylist.append(4) ->", mylist
mylist.remove(2) # Element entfernen
print "mylist.remove(2) ->", mylist
print

Gruß

Dookie
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Ein Set hat auch noch die Methode clear, damit kann das Set auf "leer" gesetzt werden, bei Listen müssen alle Elemente gelöscht werden.

Code: Alles auswählen

myset.clear()
print "myset.clear() ->", myset

while mylist:
    mylist.pop() # letztes Element entfernen
print "while mylist:\n    mylist.pop()\n->",mylist
Gruß

Dookie
P.S.: da das nichts mit Netzwerken zu Tun hat verschiebe ich den Thread ins Forum für allgemeine Fragen.
infostud
User
Beiträge: 17
Registriert: Donnerstag 13. Mai 2004, 11:12

erst einmal vielen Dank für deine hilfreichen tipps.
nun, wie kann ich alle elemente von set zur Menge hinzufügen?
und mit size() die Anzahl der Elemente in der menge bestimmen???
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Sets können mit den logischen Operatoren verknopft werden
um 2 Sets zusammenzuführen wird das logische oder "|" verwendet

Code: Alles auswählen

set1 = Set([1,2,3])
set2 = Set([4,5,6])
set3 = set1 | set2
um set2 zu set1 hinzuzufügen kann auch

Code: Alles auswählen

set1 |= set2
verwendet werden.
Die weiteren Operatoren findest Du auf http://www.python.org/doc/current/lib/set-objects.html


Gruß

Dookie
infostud
User
Beiträge: 17
Registriert: Donnerstag 13. Mai 2004, 11:12

Hallo
die Tipps sind sehr hilfreich.
Danke nochmals.
das ist aber die Set Klasse von Python.
Genau so eine möchte ich selbst bauen...
Hilfe...
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Hi nochmal,

schau dir einfach den Source von sets.py an, der ist unter Linux in /usr/lib/python2.3/sets.py zu finden, irgendwo treibt der sich sicher auch unter Windows herum ;)


Gruß

Dookie
Antworten