Neffe vs. Onkel
-
- User
- Beiträge: 26
- Registriert: Freitag 14. September 2007, 09:58
- Wohnort: bonn
halloooooooooo allerseits
bin nicht so lange hier angemeldet
und kann nicht öfters on kommen
hab aber die erfahrung gemacht dass die leute hier sehr hilfsbereit und nett sind
macht echt einen riesen spass die dinge auszuprobieren die hier erklärt werden und neue sachen auszuprobieren bei python.
ich wollte um eure hilfe bitten
bei einer aufgabe komme ich nicht weiter die wie folgt lautet:
mein onkel ist informatiker und wollte mich testen ob ich schon mit python soweit bin um das nachzumachen weil ich schon seit 3monaten mit python arbeite
für ihn war das ein kinderspiel aber ich brauche bisschen hilfe damit
könnt ihr mir paar tipps geben wie ich die aufgaben lösen kann?
ich muss die komplette struktur skizzieren mit den inhalten der liste und die namen und die geburtsdaten abkürzen
und
ich muss die jeweiligen Elemente mit dem jeweiligen index versehen.
bin nicht so lange hier angemeldet
und kann nicht öfters on kommen
hab aber die erfahrung gemacht dass die leute hier sehr hilfsbereit und nett sind
macht echt einen riesen spass die dinge auszuprobieren die hier erklärt werden und neue sachen auszuprobieren bei python.
ich wollte um eure hilfe bitten
bei einer aufgabe komme ich nicht weiter die wie folgt lautet:
mein onkel ist informatiker und wollte mich testen ob ich schon mit python soweit bin um das nachzumachen weil ich schon seit 3monaten mit python arbeite
für ihn war das ein kinderspiel aber ich brauche bisschen hilfe damit
könnt ihr mir paar tipps geben wie ich die aufgaben lösen kann?
ich muss die komplette struktur skizzieren mit den inhalten der liste und die namen und die geburtsdaten abkürzen
und
ich muss die jeweiligen Elemente mit dem jeweiligen index versehen.
Schau Dir mal die folgenden Sachen an.
- [wiki]Tutorial/Strings[/wiki]
[wiki]Tutorial/Listen[/wiki]
http://docs.python.org/lib/typesseq-strings.html, insbesondere die Informationen zu "Minimum field width"
-
- User
- Beiträge: 26
- Registriert: Freitag 14. September 2007, 09:58
- Wohnort: bonn
es tut mir leid aber wenn ich etwas nicht verstehe dann sind die tutorials immer die ersten sachen die ich mir angucken von daher hab ich das schon durchgelesen aber trotzdem danke
-
- User
- Beiträge: 424
- Registriert: Montag 28. Juli 2003, 16:19
- Wohnort: /dev/reality
Zeig doch mal, was du bisher hast.
-
- User
- Beiträge: 26
- Registriert: Freitag 14. September 2007, 09:58
- Wohnort: bonn
ja das problem ist ja der anfang wie ich beginnen soll
in der schule kann ichs immer aber zuhause ist es immer viel schwieriger
weil man auf sich allein gestellt ist
in der schule kann ichs immer aber zuhause ist es immer viel schwieriger
weil man auf sich allein gestellt ist
Warum, macht das in der Schule euer Lehrer immer für euch?blackmamba28 hat geschrieben:ja das problem ist ja der anfang wie ich beginnen soll
in der schule kann ichs immer aber zuhause ist es immer viel schwieriger
weil man auf sich allein gestellt ist
Nun, der Ablauf sollte nicht allzuschwer sein:
Erstelle eine Liste (oder Tupel, wenn sich die Werte nicht ändern sollen), die verschachtelt die Daten enthält.
Bsp:
Code: Alles auswählen
daten = (
('Gans', 'Otto', '23.11.1989', '7'),
#...
)
Für die Einrückungen müsste dir das Modul textwrap gute Dienste leisten, wenn ich das richtig in Erinnerung habe.
Wenns dabei Probleme gibt, einfach den bestehenden Code uns hier mal Zeigen und dann werden wir sicherlich auch weiterhelfen.
gruß, Christopher!
-
- User
- Beiträge: 26
- Registriert: Freitag 14. September 2007, 09:58
- Wohnort: bonn
hallo
ja die vierte soll die klasse sein in die die person geht
ja die vierte soll die klasse sein in die die person geht
OK, dann hast Du also eine Liste von Informationen zu Personen. Jeder Satz von Informationen besteht aus dem Nachnamen, dem Vornamen, dem Geburtsdatum und der Klasse. Das könnte man jetzt mit Klassen modellieren, aber wir fangen mal ganz einfach an.
Aufgabe 1: Schreibe eine for-Schleife, die für jede Person ihre vier Informationen ausgibt.
Code: Alles auswählen
personen = [("Gans", "Otto", "23.11.1989", 7),
("Huhn", "Franzi", "11.11.1990", 6),
# und so weiter
("Wachtel", "Spinat", "04.04.2001", 5)]
-
- User
- Beiträge: 26
- Registriert: Freitag 14. September 2007, 09:58
- Wohnort: bonn
ja habe geschrieben:
Code: Alles auswählen
Liste=[]
for personen in range(10)= [
('Gans', 'Otto', '23.11.1989', '7'),
('Huhn', 'Franzi', '11.11.1990', '6'),
('Ente', 'Lahme', '02.02.2000', '5'),
('Ganter', 'Gudrun', '04.04.2000', '5'),
('Pute', 'Dumme', '09.12.1989', '7'),
('Hahn', 'Otto', '01.02.1990', '7'),
('Erpel', 'Horst', '08.08.1989', '6'),
('Schwan', 'Svantje', '01.01.2000', '5'),
('Reiher', 'Rudi', '05.05.1988', '6'),
('Wachtel', 'Spinat', '04.04.2001', '5'),
]
Das ist nicht ganz richtig.
range liefert Dir eine Liste von Ganzzahlen. Über die kannst Du zwar mit for iterieren, aber eigentlich willst Du ja eine Liste von Personen haben.
Probier es doch mal auf die Art, wie EnTeQuAk oder ich es geschrieben haben. Bau die Liste der Pesonen zusammen, iterier dann mit einer for-Schleife über diese Liste und gibt im Rumpf der for-Schleife die Informationen zur aktuellen Person aus.
Code: Alles auswählen
>>> range(10)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
Probier es doch mal auf die Art, wie EnTeQuAk oder ich es geschrieben haben. Bau die Liste der Pesonen zusammen, iterier dann mit einer for-Schleife über diese Liste und gibt im Rumpf der for-Schleife die Informationen zur aktuellen Person aus.
-
- User
- Beiträge: 26
- Registriert: Freitag 14. September 2007, 09:58
- Wohnort: bonn
könnt ihr mir das nicht mal vorgeben wie ihr das meint mit der for schleife weil ich das grad nicht ganz hinkriege
wäre supernett:)
wäre supernett:)
ein kleiner Tipp noch, da ich vermute, dass du auf der falschen Färte bist:
Das ist dein aktueller (richtiger) Code.
Du kannst in Python über einzelne Elemente einer Liste iterieren
Um zu sehen, was dann an 'element' gebunden ist, kannst du es ja einfach mit einem 'print' ausgeben. Somit kannst du auch experimentell an die Aufgabe rangehen und mit dem interpreter deine Ideen ausprobieren. Dann würdest du z.B. auch sehen, dass dein Vorschlag oben nicht ganz so hinhaut, wie du es gern hättest.
Ansonsten empfehle ich dir, mal ein Python-Tutorial durchzuarbeiten bzw. mal unser Wiki durchzusuchen ( http://wiki.python.de ). Da findest du viele Informationen.
Denn es sieht so aus, als wenn du noch nicht sehr viel Erfahrung mit Python gemacht hast (die Anzahl an Monaten hat ja nichts zu bedeuten).
MfG EnTeQuAk
Edit:
Code: Alles auswählen
daten = [
('Gans', 'Otto', '23.11.1989', '7'),
('Huhn', 'Franzi', '11.11.1990', '6'),
('Ente', 'Lahme', '02.02.2000', '5'),
('Ganter', 'Gudrun', '04.04.2000', '5'),
('Pute', 'Dumme', '09.12.1989', '7'),
('Hahn', 'Otto', '01.02.1990', '7'),
('Erpel', 'Horst', '08.08.1989', '6'),
('Schwan', 'Svantje', '01.01.2000', '5'),
('Reiher', 'Rudi', '05.05.1988', '6'),
('Wachtel', 'Spinat', '04.04.2001', '5'),
]
Du kannst in Python über einzelne Elemente einer Liste iterieren
Code: Alles auswählen
for element in daten:
#...
Ansonsten empfehle ich dir, mal ein Python-Tutorial durchzuarbeiten bzw. mal unser Wiki durchzusuchen ( http://wiki.python.de ). Da findest du viele Informationen.
Denn es sieht so aus, als wenn du noch nicht sehr viel Erfahrung mit Python gemacht hast (die Anzahl an Monaten hat ja nichts zu bedeuten).
MfG EnTeQuAk
Edit:
*mööööp* Hausaufgaben alarm. Wie schon oft woanders geschrieben -- Wir lösen keine Aufgaben, wir helfen nur bei der Lösung. Also ohne Hilfe deinerseits (mit bestehendem Code z.B.) können/werden wir nicht so viel machenkönnt ihr mir das nicht mal vorgeben wie ihr das meint mit der for schleife weil ich das grad nicht ganz hinkriege
wäre supernett:)
-
- User
- Beiträge: 26
- Registriert: Freitag 14. September 2007, 09:58
- Wohnort: bonn
ich probiere es ja auch selber ist ja nicht so dass ich alles euch überlasse
also jetzt hab ich es so
also jetzt hab ich es so
Code: Alles auswählen
Liste=[]
for element in daten= [
('Gans', 'Otto', '23.11.1989', '7'),
('Huhn', 'Franzi', '11.11.1990', '6'),
('Ente', 'Lahme', '02.02.2000', '5'),
('Ganter', 'Gudrun', '04.04.2000', '5'),
('Pute', 'Dumme', '09.12.1989', '7'),
('Hahn', 'Otto', '01.02.1990', '7'),
('Erpel', 'Horst', '08.08.1989', '6'),
('Schwan', 'Svantje', '01.01.2000', '5'),
('Reiher', 'Rudi', '05.05.1988', '6'),
('Wachtel', 'Spinat', '04.04.2001', '5'),
]
Okay, Stopp!
Sorry, wenn das ein wenig Schroff wirkt, aber ließt du überhaupt alles was wir dir Schreiben?
Ließ dir bitte das [wiki=Tutorial]Tutorial[/wiki] durch und dann bitte auch, unsere Beiträge.
Und bitte bitte bitte probiere deinen Code vorher aus, bevor du hier einfach sinnlosen Code schreibst.
MfG EnTeQuAk
Sorry, wenn das ein wenig Schroff wirkt, aber ließt du überhaupt alles was wir dir Schreiben?
Ließ dir bitte das [wiki=Tutorial]Tutorial[/wiki] durch und dann bitte auch, unsere Beiträge.
Und bitte bitte bitte probiere deinen Code vorher aus, bevor du hier einfach sinnlosen Code schreibst.
MfG EnTeQuAk
Du bringst noch das Erzeugen einer Liste mit deren Verwendung in einer for-Schleife durcheinander. Um eine Liste zu erzeugen brauchst Du keine for-Schleife.
genügt, um eine Liste zu erzeugen.
Über ein Liste iterierst Du mit for, das aber eine klare Syntax hat:
Wichtig sind der Doppelpunkt am Ende der ersten Zeile und die Einrückung in der zweiten.
Code: Alles auswählen
liste = ["foo", "bar", "baz"]
Über ein Liste iterierst Du mit for, das aber eine klare Syntax hat:
Code: Alles auswählen
for ding in liste:
print ding
-
- Python-Forum Veteran
- Beiträge: 1209
- Registriert: Montag 29. September 2003, 17:18
- Wohnort: Purkersdorf (bei Wien [Austria])
Den Eindruck habe ich aber schon. EnTeQuAk hat dir doch, nett wie er ist, schon vorgekaut wie es funktioniert.ch probiere es ja auch selber ist ja nicht so dass ich alles euch überlasse
Und nach 3 Monaten harter Arbeit schreibst du Dinge wie for personen in range(10)= [ ?weil ich schon seit 3monaten mit python arbeite
Jep.EnTeQuAk hat geschrieben:Warum, macht das in der Schule euer Lehrer immer für euch?
Hi,
du wirst dir mit einer programmiersprache immer unsicher vorkommen wenn du nicht genau über die syntax bescheid weisst.
syntax heisst in etwa "was darf ich wo hinschreiben"
und bei allem was du benutzt musst du dir erstmal klar werden wie die syntax ist. ich mache das mal ausführlich an der for-schleife klar.
du musst das so (mit lesen und ausprobieren und hier nachfragen) mit allen "sprachelementen" tun.
probier doch zb mal für das "if".
also:
dabei ist
for: ein sogenanntes schlüsselwort, fest von python vorgegeben. hiermit sagst du python erstmal was du überhaupt vorhast (eine for-schleife)
listen_element: eine variable die du beliebig benennen darfst
in: wieder ein schlüsselwort, genauer der "in" operator
liste: irgendetwas "aufzählbares".
am schluss der doppelpunkt ":" und nur der. "=" ist hier nicht erlaubt.
#mach irgendwas: steht in der nächsten zeile. und zwar eingerückt. das ist das was für jedes element in der liste getan wird.
im beispiel habe ich für liste "[1,2,3]" eingesetzt.
du könntest aber auch eine funktion einsetzten, die eine liste zurückgibt,
zb range().
oder (wenn auch sinnfrei)
und noch ein paar beispiel was man nicht darf:
du wirst dir mit einer programmiersprache immer unsicher vorkommen wenn du nicht genau über die syntax bescheid weisst.
syntax heisst in etwa "was darf ich wo hinschreiben"
und bei allem was du benutzt musst du dir erstmal klar werden wie die syntax ist. ich mache das mal ausführlich an der for-schleife klar.
du musst das so (mit lesen und ausprobieren und hier nachfragen) mit allen "sprachelementen" tun.
probier doch zb mal für das "if".
also:
Code: Alles auswählen
for listen_element in liste:
#mach irgendwas
#beispiel:
>>> for e in [1,2,3]:
... print e
...
1
2
3
for: ein sogenanntes schlüsselwort, fest von python vorgegeben. hiermit sagst du python erstmal was du überhaupt vorhast (eine for-schleife)
listen_element: eine variable die du beliebig benennen darfst
in: wieder ein schlüsselwort, genauer der "in" operator
liste: irgendetwas "aufzählbares".
am schluss der doppelpunkt ":" und nur der. "=" ist hier nicht erlaubt.
#mach irgendwas: steht in der nächsten zeile. und zwar eingerückt. das ist das was für jedes element in der liste getan wird.
im beispiel habe ich für liste "[1,2,3]" eingesetzt.
du könntest aber auch eine funktion einsetzten, die eine liste zurückgibt,
zb range().
oder (wenn auch sinnfrei)
Code: Alles auswählen
def gibt_mich_liste():
return [1,2,3]
und noch ein paar beispiel was man nicht darf:
Code: Alles auswählen
>>> for 1 in [1,2,3]:
... pass
...
File "<stdin>", line 1
SyntaxError: cant assign to literal
# 1 ist keine variable, sondern ein fester wert, ein literal.
# daher ein syntaxfehler, das literal darf da nicht stehen!
>>> for e in 1:
... pass
...
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'int' object is not iterable
# diesmal kein syntaxfehler, aber so ähnlich.
# statt durch eine liste will ich hier durch eine einzelne zahl laufen, das geht nicht. for e in [1]: wäre dagegen in ordnung - warum?
>>> for e innen_drin_in [1,2,3]:
File "<stdin>", line 1
for e innen_drin_in [1,2,3]:
^
SyntaxError: invalid syntax
#auch falsch. hier habe ich das sclüsselwort "in" falsch geschrieben.
>>> for e in [1,2,3]
File "<stdin>", line 1
for e in [1,2,3]
^
SyntaxError: invalid syntax
# der doppelpunkt fehlt.
>>> for e in [1,2,3] =
File "<stdin>", line 1
for e in [1,2,3] =
^
SyntaxError: invalid syntax
# wieder fehlt der ":", das "=" macht es auch nicht besser :)
>>>