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.
infostud
User
Beiträge: 17
Registriert: Donnerstag 13. Mai 2004, 11:12

Anfängerprobleme

Beitragvon infostud » Samstag 15. Mai 2004, 17:25

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
Benutzeravatar
fs111
User
Beiträge: 170
Registriert: Samstag 15. November 2003, 11:42
Kontaktdaten:

Beitragvon fs111 » Samstag 15. Mai 2004, 17:44

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
Benutzeravatar
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Beitragvon Dookie » Samstag 15. Mai 2004, 17:46

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
Benutzeravatar
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Beitragvon Dookie » Samstag 15. Mai 2004, 17:52

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

danke

Beitragvon infostud » Samstag 15. Mai 2004, 18:52

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???
Benutzeravatar
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Beitragvon Dookie » Samstag 15. Mai 2004, 19:25

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

set

Beitragvon infostud » Sonntag 16. Mai 2004, 17:21

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...
Benutzeravatar
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Beitragvon Dookie » Sonntag 16. Mai 2004, 18:31

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

Wer ist online?

Mitglieder in diesem Forum: Google [Bot]