Guten Abend Leute.
Seit längerem spiele ich mit dem Gedanken Python zu lernen, da ich im mom Html lerne und das gelernte dann an meiner Webseite anwende. Ich habe gelesen man kann viele Sachen mit Python machen, die für meine Hompage irgendwann unerlässlich sind, wie zum Beispiel eine Hompageinterne Suchmaschiene oder sowas.
Ich habe mir für die Grundkenntnisse das Buch vo Thomas Theis Glileo Computing-Verlag Einstieg in Python gekauft. Nun lernt man ja nicht nur durch lesen sondern eher durch Übung. Im Buch sind aber kaum Übungsaufgaben drinne. Bei Amazon habe ich kein Buch mit Übungsaufgaben gefunden und im Netz wurde ich auch nicht fündig. (Nur eine Seite, aber die Aufgaben sind mir zu ja hm wie sag ich es Mathematisch oder so. Will es ja nicht gleich Studieren)
Kann mir vielleicht jemand weiterhelfen in dem Punkt: Übungen, praktische Übungen?
Lg Anne
Einsteigerin in python
-
- User
- Beiträge: 44
- Registriert: Dienstag 7. Mai 2013, 23:02
- Wohnort: Greifswald
Da du mit HTML am arbeiten bist kannst du dir ja vor nehmen deine Seite mit Django oder der gleichen zu machen dabei lernt man richtig viel.
Was du auch machen kannst ist dir ein kleines Script vor zu nehemen was dir Tägliche aufgaben erspart z.B. Bilder sortieren oder sowas.
Was auch noch gut ist ein kleines Spiel zu machen zum Beispiel mit pygame "Fang den Geist/Ball" .
Aber auch unter dem Python-forum sind schon solche Artikel zufinden was man so für denn Anfang machen kann oder unter der Seite Python the Hardway sind gute ideen.
http://learnpythonthehardway.org/book/next.html
Was du auch machen kannst ist dir ein kleines Script vor zu nehemen was dir Tägliche aufgaben erspart z.B. Bilder sortieren oder sowas.
Was auch noch gut ist ein kleines Spiel zu machen zum Beispiel mit pygame "Fang den Geist/Ball" .
Aber auch unter dem Python-forum sind schon solche Artikel zufinden was man so für denn Anfang machen kann oder unter der Seite Python the Hardway sind gute ideen.
http://learnpythonthehardway.org/book/next.html
- Über Fehler sollte man sich freuen als über das richtige Ergebnis denn wir Menschen können nur aus den Fehlern lernen-
-
- User
- Beiträge: 44
- Registriert: Dienstag 7. Mai 2013, 23:02
- Wohnort: Greifswald
Vielen Dank erst einmal für die schnelle Antwort. Auf den Seiten war ich natürlich schon. Bin aber kein Freund von Fremdsprachen. Hatte während meiner Schulzeit auch Nachhilfe in English und kam troztdem nur auf eine 4. Daher bringen mir die Englishsprachigen Seiten nicht sonderlich viel.
Lg Anne
Lg Anne
Naja die Seite sollte auch nur eine Kurze auflistung von Ideen sein.Hatte während meiner Schulzeit auch Nachhilfe in English und kam troztdem nur auf eine 4. Daher bringen mir die Englishsprachigen Seiten nicht sonderlich viel.
Aber das mit dem Englisch wird schon von alleine kommen wenn du dich viel mit den Programmieren beschäftigst da viele Dokumentationen in Englisch sind kommst du da nicht drum herum.
Aber ich kann dir zum Anfang noch ein Link geben wo auch ein Paar module behandelt werden und man damit schon viel experimentieren kann.
http://de.wikibooks.org/wiki/Python_unter_Linux
- Über Fehler sollte man sich freuen als über das richtige Ergebnis denn wir Menschen können nur aus den Fehlern lernen-
@mettalqueen: Die Frage wird hier öfter gestellt und es kommen immer die gleichen, oder zumindest ähnliche Antworten. Du könntest also mal die Suchfunktion versuchen.
Project Euler kommt wahrscheinlich nicht in Frage, wenn es nicht zu mathematisch werden soll.
Vielleicht Aufgaben beim Sphere Online Judge oder welche von HP Codewars. Letztere sind vom Schwierigkeitsgrad sehr weit gestreut, soll heissen es gibt von jedem Jahr sehr einfache, bis zu Schwierigeren oder zumindest etwas Aufwändigeren.
Wenn Du Python für eine Website einsetzen möchtest, solltest Du Dir allerdings klar machen, dass das in der Regel nicht bei jedem Hoster problemlos möglich ist. Das muss vom Hoster schon unterstützt werden, und zwar jenseits von einfachen CGI-Skripten.
Viele webbezogene Module und Packages sind übrigens noch nicht auf Python 3 portiert und Hoster sind dementsprechend auch noch nicht bei Python 3 angekommen. Da müsste man dann schon einen eigenen Server betreiben.
Ansonsten sind die besten Übungsprojekte oft kleine Projekte die einen persönlich interessieren. Danach kannst Du dann aber nicht andere fragen, denn was Dich interessierst, weisst Du am besten.
Mittelgrosse (bis grosse) Projekte sind auch Brett- oder Kartenspiele umzusetzen. Falls Du Da ein Lieblingsspiel hast, was sich als Computerspiel umsetzen lässt…
Edit: Wenn Du mit Englisch nicht klar kommst, dann vergiss das mit dem Programmieren. Das mag jetzt erst einmal hart klingen, aber so gut wie alle Dokumentation zu Bibliotheken ist vorzugsweise auf Englisch verfügbar. Für einzelne Themen mag es auch etwas auf Deutsch geben, aber API-Dokumentation gibt es nur *sehr* selten auch auf Deutsch, und wenn dann fast nie *aktuell*. Und ohne API-Dokumentation lesen zu können, kann man nicht sinnvoll programmieren. Sieh es als Chance Englisch zu lernen. Zumindest das technische Englisch, welches in diesem Fachgebiet verwendet wird. Das ist einfacher als Romane oder ähnliches, weil es bei API-Dokumentation ja nicht darauf ankommt möglichst „blumig” und „schön” zu schreiben, sondern möglichst klar und deutlich Informationen zu vermitteln.
Project Euler kommt wahrscheinlich nicht in Frage, wenn es nicht zu mathematisch werden soll.

Wenn Du Python für eine Website einsetzen möchtest, solltest Du Dir allerdings klar machen, dass das in der Regel nicht bei jedem Hoster problemlos möglich ist. Das muss vom Hoster schon unterstützt werden, und zwar jenseits von einfachen CGI-Skripten.
Viele webbezogene Module und Packages sind übrigens noch nicht auf Python 3 portiert und Hoster sind dementsprechend auch noch nicht bei Python 3 angekommen. Da müsste man dann schon einen eigenen Server betreiben.
Ansonsten sind die besten Übungsprojekte oft kleine Projekte die einen persönlich interessieren. Danach kannst Du dann aber nicht andere fragen, denn was Dich interessierst, weisst Du am besten.

Mittelgrosse (bis grosse) Projekte sind auch Brett- oder Kartenspiele umzusetzen. Falls Du Da ein Lieblingsspiel hast, was sich als Computerspiel umsetzen lässt…
Edit: Wenn Du mit Englisch nicht klar kommst, dann vergiss das mit dem Programmieren. Das mag jetzt erst einmal hart klingen, aber so gut wie alle Dokumentation zu Bibliotheken ist vorzugsweise auf Englisch verfügbar. Für einzelne Themen mag es auch etwas auf Deutsch geben, aber API-Dokumentation gibt es nur *sehr* selten auch auf Deutsch, und wenn dann fast nie *aktuell*. Und ohne API-Dokumentation lesen zu können, kann man nicht sinnvoll programmieren. Sieh es als Chance Englisch zu lernen. Zumindest das technische Englisch, welches in diesem Fachgebiet verwendet wird. Das ist einfacher als Romane oder ähnliches, weil es bei API-Dokumentation ja nicht darauf ankommt möglichst „blumig” und „schön” zu schreiben, sondern möglichst klar und deutlich Informationen zu vermitteln.
Ich habe letztens dieses Spiel gefunden und es verwendet neben dem ganzen Javascript und HTML einen Python-Server zum Speichern des Spielerfortschritts. Etwas der Sorte könnte ich mir ganz gut als Projekt für Bottle oder Flask vorstellen.
-
- User
- Beiträge: 44
- Registriert: Dienstag 7. Mai 2013, 23:02
- Wohnort: Greifswald
Ich habe geschaut ich kann Python benutzen, bzw das nächste Paket nehmen und dann nutzen, weiß nicht mehr so genau. Ich denke auch dass wenn ich immer mal mit dem english in Verbindung komme, dass ich es dann irgendwie lerne. In der Nacht kam mir die Idee einfach ein Lernprogramm zu machen mit Englishen Vokabeln, die mir hier vielleicht über den Weg laufen. Und da meine Eltern letzte Woche in Schottland waren Urlaub machen und vielleicht irgendwann noch einmal hinfahren wollen, vorher aber English lernen ist es vielleicht eine gute Idee, da sie dann das Spiel immer gut Testen können. Ich glaube der letzte Satz ist ein bisschen sehr verschachtelt. Ansonsten hatte ich auch an ein Memory-spiel gedacht. Die Benutzerobeflächen werden in meinem Buch zwar erst im letzten Kapitel behandelt, aber vielleicht kann man das auch vorziehen.
Vielen Dank ihr habt mir sehr geholfen.
Ich werde mich bestimmt öfters nochmal melden
(Ich durchsuche das Forum bereits seit 3 Tagen, hatte aber nichts passendes gefunden, ausser das mit dem Tamagotchi, fand es für den Anfang dann aber zu schwer)
Vielen Dank ihr habt mir sehr geholfen.
Ich werde mich bestimmt öfters nochmal melden
(Ich durchsuche das Forum bereits seit 3 Tagen, hatte aber nichts passendes gefunden, ausser das mit dem Tamagotchi, fand es für den Anfang dann aber zu schwer)
@mettalqueen: Benutzeroberflächen kommen aus gutem Grund zum Schluss, weil die auf allem vorhergehendem aufbauen und ereignisorientierte Programmierung als neue zusätzliche Technik mitbringen, die davor meistens noch nicht wichtig war. Objektorientierte Programmierung (OOP) sollte man zu dem Zeitpunkt dann schon drauf haben, sonst muss man zwei neue Themen auf einmal lernen.
Der übliche Aufbau ist:
Der übliche Aufbau ist:
- Ausdrücke
- Kontrollstrukturen (Schleifen, bedingte Verzweigungen)
- Funktionen
- Module (eventuell Packages)
- Klassen (OOP)
- GUI (ereignisorientierte Programmierung)
Was allerdings ginge, wäre ein Generator, der statisches HTML ausspuckt; zumindest im Bereich Blog-Software scheint mir das halbwegs "beliebt" zu sein. Ist natürlich was anderes, als "richtige" Webentwicklung, aber vielleicht trotzdem ein nettes Übungsprojekt.BlackJack hat geschrieben: Wenn Du Python für eine Website einsetzen möchtest, solltest Du Dir allerdings klar machen, dass das in der Regel nicht bei jedem Hoster problemlos möglich ist. Das muss vom Hoster schon unterstützt werden, und zwar jenseits von einfachen CGI-Skripten.
@nezzcarth: Die website-interne Suchfunktion, die mettalqueen als Beispiel angegeben hat, müsste man dann in JavaScript umsetzen. Als Beispiel könnte da vielleicht die Suche von Sphinx dienen.
-
- User
- Beiträge: 44
- Registriert: Dienstag 7. Mai 2013, 23:02
- Wohnort: Greifswald
Das ist ja alles komplizierter als gedacht
@jerch: Das ist ja die Grundstruktur von so ziemlich jedem Tutorial oder Buch. Ich denke nicht, das ich was besseres schreiben kann, als bereits vorhandene gute Tutorials oder Bücher.
@mettalqueen: Das Essay Teach Yourself Programming in Ten Years ist in dem Zusammenhang lesenswert. (Da gibt es auch einen Link auf eine Deutsche Übersetzung.)
@mettalqueen: Das Essay Teach Yourself Programming in Ten Years ist in dem Zusammenhang lesenswert. (Da gibt es auch einen Link auf eine Deutsche Übersetzung.)
-
- User
- Beiträge: 44
- Registriert: Dienstag 7. Mai 2013, 23:02
- Wohnort: Greifswald
Inzwischen habe ich gelernt Verzweigungen, Schlifen, und Funktionen und Module gelernt und mein Wissen an einem Projekt versucht anzuwenden.
Ich habe mir gedacht ich schreibe so etwas wie ein Vokabeltrainer
soweit funktioniert er auch. Jetzt stellt sich die Frage wie komme ich an weitere Wörter zum Beispiel an b? Bei Zahlen könnte man ja einfach mit range(1,10,1) sagen er soll alle nehmen von 1-10 in 1er Schritten. Geht das auch bei Buchstaben? (a,z,1)?
Ich habe mir gedacht ich schreibe so etwas wie ein Vokabeltrainer
Code: Alles auswählen
#!/usr/bin/python3
#Woerterbuch
a = "angry"
a1 = "wütend"
b = "car"
b1 = "Auto"
#Schleife
for I in 1, 2, 3:
#Eingabe
print("Gebe die deutsche Übersetzung ein für:", a)
a2=input()
#Ausgabe
if a2 == a1:
print(a2, "ist richtig")
break
else:
print(a2, "ist falsch")
#Ende
print("angry-wütend")
@mettalqueen: Dir fehlen Datenstrukturen. Wenn man anfängt Namen zu nummerieren macht man in 99% der Fälle etwas falsch. Du hast Paare von Wörtern. Ein Paar könnte man jeweils als Tupel mit zwei Elementen modellieren und die dann in eine Liste stecken. Und dann mit einer Schleife über diese Liste iterieren und den Benutzer nach den Übersetzungen fragen.
- cofi
- Python-Forum Veteran
- Beiträge: 4432
- Registriert: Sonntag 30. März 2008, 04:16
- Wohnort: RGFybXN0YWR0
Schau dir mal Listen und Tupel an und dann organisier deine Woerter damit.
Man kann auch eine Schleife ueber Buchstaben haben, aber das ist in dem Fall nicht hilfreich, weil du mit den Buchstaben nicht auf deine Namen zugreifen kannst.
Man kann auch eine Schleife ueber Buchstaben haben, aber das ist in dem Fall nicht hilfreich, weil du mit den Buchstaben nicht auf deine Namen zugreifen kannst.
Michael Markert ❖ PEP 8 Übersetzung ❖ Tutorial Übersetzung (3.x) ⇒ Online-Version (Python 3.3) ❖ Deutscher Python-Insider ❖ Projekte
-
- User
- Beiträge: 44
- Registriert: Dienstag 7. Mai 2013, 23:02
- Wohnort: Greifswald
ok danke, dann lese ich mal die nächsten 26 Seiten des Buches und dann bin ich bei Tupel.
Als Anfänger hat man auch garkeine möglichkeiten sein gelerntes Wissen irgendwie anzuwenden. Das wirklich doof und demotivierend
Als Anfänger hat man auch garkeine möglichkeiten sein gelerntes Wissen irgendwie anzuwenden. Das wirklich doof und demotivierend
-
- User
- Beiträge: 44
- Registriert: Dienstag 7. Mai 2013, 23:02
- Wohnort: Greifswald
Code: Alles auswählen
#!/usr/bin/python3
#Werte
p = 0.01
#Eingabe
print("Wieviel Perlen sind in einem Kreis?: ")
k=input()
kreis=float(k)
print("Aus wieviel Kreisen besteht die Figur?: ")
a=input()
anzahl=float(a)
#Berechnung
e = k * a
g = e * p
print("Die Aufgabe:", kreis, "*", anzahl)
print("Die Aufgabe:", e, "*", p)
#Ausgabe
print("Es wird benötigt:", g)
Folgende Fehlermeldung spuckt er aus
Code: Alles auswählen
Traceback (most recent call last):
File "/home/anne/Arbeitsfläche/Python/perlen.py", line 17, in <module>
e = k * a
TypeError: can't multiply sequence by non-int of type 'str'
>>>
-
- User
- Beiträge: 44
- Registriert: Dienstag 7. Mai 2013, 23:02
- Wohnort: Greifswald
Ich habe es schon gelöst bekommen mit Hilfe
int() gibt einen String aus und mit Strings kann man nicht rechnen
Irgendwie stand das nicht im Buch
int() gibt einen String aus und mit Strings kann man nicht rechnen
Irgendwie stand das nicht im Buch
Code: Alles auswählen
#!/usr/bin/python3
#Werte
p = 0.01
#Eingabe
print("Wieviel Perlen sind in einem Kreis?: ")
k=input()
kreis=float(k)
print("Aus wieviel Kreisen besteht die Figur?: ")
a=input()
anzahl=float(a)
#Berechnung
e = kreis * anzahl
g = e * p
print("Die Aufgabe:", kreis, "*", anzahl)
print("Die Aufgabe:", e, "*", p)
#Ausgabe
print("Es wird benötigt:", g)