Python Bücher

Gute Links und Tutorials könnt ihr hier posten.
Sirius3
User
Beiträge: 17703
Registriert: Sonntag 21. Oktober 2012, 17:20

@pyseidon: das Buch ist mit Einschränkungen empfehlenswert, aber wie bei allen Büchern darf man nicht alles unreflektiert glauben. Dank Leseprobe kann man schön sehen, dass der Author oder Übersetzer PEP-8 nicht verstanden hat.

Buch: "Hier sind einige der Regeln, die Sie unbedingt einhalten sollten:"
PEP-8: "But most importantly: know when to be inconsistent -- sometimes the style guide just doesn't apply."

Buch: "Geschützte Instanzattribute sollten mit _führendem_unterstrich geschrieben
werden."
PEP-8: "_single_leading_underscore : weak "internal use" indicator."
In Python gibt es keine Zugriffsschutz!

Buch: "Private Instanzattribute sollten mit __doppelten_führenden_unterstrichen
geschrieben werden."
PEP-8: "__double_leading_underscore : when naming a class attribute, invokes name mangling"
In Python gibt es erst recht kein "privat"!

Und neben vielen guten Beispielen, ist es ohne konkretes Problem oft schwierig, sinnvolle Beispiele zu finden. Z.B. Kapitel 1.11: zip-Funktion: warum sollte man extra eine Liste mit Längen von Strings anlegen, um dann über die Strings und Längen gleichzeitig zu iterieren?

Code: Alles auswählen

for name in names:
    if len(name) > max_letters:
       longest_name = name
       max_letters = len(name)
oder man nimmt gleich die max-Funktion:

Code: Alles auswählen

longest_name = max(names, key=len)
Die Logik, warum jedes Unterkapitel fortlaufend mit Punkt eingeleitet wird, erschließt sich mir nicht. Es werden deutlich mehr Erklärungen gegeben, als bei den üblichen "ich schreibe die API-Referenz ab"-Büchern.
pyseidon
User
Beiträge: 19
Registriert: Donnerstag 24. September 2009, 20:25

@Sirius3 Danke für Deine Einschätzung.
Dank Leseprobe kann man schön sehen, dass der Author oder Übersetzer PEP-8 nicht verstanden hat.
Definitiv der Author. Habe mal in der englischen Leseprobe nachgeschaut:
  1. "Here are a few rules you should be sure to follow."
  2. "Protected instance attributes should be in _leading_underscore format"
  3. "Private instance attributes should be in __double_leading_underscore format"
Die Logik, warum jedes Unterkapitel fortlaufend mit Punkt eingeleitet wird, erschließt sich mir nicht.
Vermutlich soll das der Bezug zu dem Untertitel "59 Wege..." sein. :D Warum der Weg jetzt ein Punkt ist. :K Könnte aber auch ein Übersetzungsfehler von "Item" sein. Das könnte man ja auch mit "Nummer" übersetzen.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

pyseidon hat geschrieben:Kann schon wer was zu dem folgenden Buch sagen Effektiv Python programmieren - 59 Wege für bessere Python-Programme?
Ich habe mal die Leseprobe angeschaut und das schaut auf den ersten Blick ganz gut aus und empfehlenswert, sind viele Sachen die hier im Forum schon seit Jahren gepredigt werden. Insofern, Empfehlung von meiner Seite, allerdings ist das kein Buch welches sich an Einsteiger richtet.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
EncepT
User
Beiträge: 3
Registriert: Sonntag 4. Dezember 2016, 12:52

Hallo,
Hat schonmal jemand von dem Buch "Python Ge-packt" gehört?
Ich habe es mir vor ein paar tagen über ebay bestellt,da ich mich sehr für Python interresiere.
(Es ist die 3. Ausgabe)
Benutzeravatar
pixewakb
User
Beiträge: 1405
Registriert: Sonntag 24. April 2011, 19:43

Ich habe die Einführung von Weigend und war damit ganz zufrieden, wenn es auch in der Einführung Längen gibt. Persönlich hatte ich den Verdacht, dass das Buch gepackt eine Einführung in die Standardbibliothek ist und da ist mir die aktuelle Online-Hilfe lieber. Du könntest ja mal schreiben, ob mein Verdacht falsch ist.

Weigend ist m. E. Informatik-Didaktiker, was man der Einführung etwas anmerkt. Fürs Selbststudium war es geeignet, aber ich hatte Vorkenntnisse in einer anderen Programmiersprache. Es gab auch abschreckende Beispiele und Herangehensweisen (Klasse Geld und Konto), um Objektorientierung zu erklären...
maik
User
Beiträge: 6
Registriert: Dienstag 2. Mai 2017, 11:27

Moin Moin,

hier wurde ja viel Diskutiert, sodass ich nicht erkennen konnte, welches Buch ich als Einsteiger zur Hand nehmen sollte.
Mal abgesehen von der Konvention PEP8 etc. eine Frage an alle erfahrenen Python-Programmierer:
Welches Buch würdet ihr nach heutigem Wissensstand als erstes nutzen um das Programmieren mit Python zu lernen? (Vorausgesetzt, man hat keine Vorkenntnisse im Programmieren).
Welches Buch würdet ihr euch im Anschluss zulegen?
Benutzeravatar
Judge
User
Beiträge: 129
Registriert: Mittwoch 13. Juni 2012, 22:27
Wohnort: Ratingen
Kontaktdaten:

Hi Maik,
definitiv ABRATEN würde ich Dir inzwischen vom Heads first / Von Kopf bis Fuss, da es zwar didaktisch hervorragend aufgemacht ist, jedoch zum einen zur Mitte des Buches hin immer unnachvollziehbarer wird da die Themen zu oberflächlich behandelt werden. Zum zweiten ist es bedingt durch die hohe Änderungsrate im Android und Cloud-Bereich an vielen Stellen bereits stark überaltert; leider wurde teilweise mit Screenshots und einer "Klicken sie erst hier, dann da..." Erklärweise gearbeitet, die aufgrund der Änderungen an den zugrunde liegenden Systemen schlicht nicht mehr nachvollziehbar sind.
Und um das nachzusehen, dafür ist der Schinken einfach zu teuer.
Benutzeravatar
MagBen
User
Beiträge: 799
Registriert: Freitag 6. Juni 2014, 05:56
Wohnort: Bremen
Kontaktdaten:

Bücher veralten oder sind nach ein paar Jahren nicht mehr lieferbar.
Das hat zur Folge, dass die Bücher mit denen ich Python gelernt habe, nicht die Bücher sind mit denen ich es heute tun würde.
Um die Bücher heute zu finden, müsste ich neu recherchieren.
Um ein geeignetes Fachbuch zu finden gehe ich folgendermaßen vor:
  • Ich lese sehr viele Amazon Rezensionen. Dabei geht es nicht darum wieviel Sterne die Leute geben, sondern ob sie die gleichen oder andere Bedürfnisse haben als ich. Z.B. hat ein Physik-Student ein Physik-Buch als zu geschwätzig kritisiert, er wollte schneller zum Punkt kommen. Ich war aber gerade auf der Suche nach einem Buch, das mir hilft eine Physik-Vorlesung für Wirtschaftsingenieure zu halten, deshalb habe ich diese Kritik positiv gewertet.
  • Ich probiere mehr als ein Buch aus.
  • Zur Not lerne ich auch mit einem Buch, das Mängel hat, weil es z.B. das einzige ist (der Fall tritt bei Python eher nicht auf). Auch damit kann man was lernen. Es ist lediglich etwas anstrengender.
a fool with a tool is still a fool, www.magben.de, YouTube
maik
User
Beiträge: 6
Registriert: Dienstag 2. Mai 2017, 11:27

Ich habe mich mal in die Informatik-Abteilung meiner Uni begeben und ein paar Bücher herausgesucht. Einige Titel habe ich hier bereits gelesen( Das Galileo-Buch habe ich direkt stehen gelassen). Wenn einer direkt ein Buch empfehlen kann, wäre ich dankbar. Ich möchte nicht so viele Bücher nach hause schleppen :D
Bild
https://www.dropbox.com/s/nl26suecoarsb ... %2003.jpeg
Benutzeravatar
Judge
User
Beiträge: 129
Registriert: Mittwoch 13. Juni 2012, 22:27
Wohnort: Ratingen
Kontaktdaten:

Ich fenke mit Programmieren lernen mit Python bist du ganz gut beraten.
nuhakan
User
Beiträge: 51
Registriert: Donnerstag 11. August 2016, 11:42

Hallo,

ich freue mich, wenn jemand mich beraten kann. Ich habe den ganzen Wochenende ein Buch zum lesen gesucht, aber kann mich nicht entscheiden. Zu viel Info. :(

Zuerst muss ich sagen, dass ich Learn Python the hard way gelesen habe, aber bin enttäuscht mit mir selbst. Ich habe das Gefühl, dass ich nicht gelernt habe. Eventuell soll ich meine Lernstrategie ändern, aber ich möchte nicht das Lernen abbrechen. Ich überlege gerade, wie ich weiter gehe. Dann bitte ich um Buchtipps.

Wenn ich schon Learn Python the hard way gelesen habe, aber nicht viel gelernt, welches Buch wäre empfehlenswert? Die nächsten habe ich als interessant gefunden.

Learning Python. https://www.fabrizio.online/learning-python/
Modern Python Cookbook. https://www.packtpub.com/application-de ... n-cookbook
Python 3 Object Oriented Programming. https://www.amazon.com/Python-3-Object- ... 1849511268
Python Unlocked. https://www.amazon.com/Python-Unlocked- ... 1785885995

Grüße.
Benutzeravatar
Judge
User
Beiträge: 129
Registriert: Mittwoch 13. Juni 2012, 22:27
Wohnort: Ratingen
Kontaktdaten:

Hast Du LPTHW gelesen aber bist nicht mitgekommen, oder bist du evtl. schon so fortgeschritten das Du nichts neues mitnehmen konntest? Oder hat's an was anderem gelegen, wie die Art der Vermittlung?
nuhakan
User
Beiträge: 51
Registriert: Donnerstag 11. August 2016, 11:42

Hallo Judge,

Python ist meine erste Programmiersprache. Ich bin nicht fortgeschritten. Das Problem mit LPTHW liegt wahrscheinlich an mir. Nicht dass ich NICHTS gelernt habe, sondern dass ich am Ende des Buches frustriert war und noch bin. Die letzten Übungen habe ich nicht gut geschafft/verstanden, aber wichtiger ist, dass ich irgendwie blockiert bin.

Sonst habe ich vor, ein privates Projekt anzufangen. Vielleicht fehlt mir das, um Anlauf zu nehmen.

Ah! Und ich möchte mit Python 3 weitermachen.

Danke für die Antwort.
Benutzeravatar
pixewakb
User
Beiträge: 1405
Registriert: Sonntag 24. April 2011, 19:43

:D Du machst was falsch. Lies doch bitte mal folgende Einführung in die Programmierung. Das hilft.

Persönlich finde ich ganz gut: Letzteres würde ich mir vornehmen und dann mit Python - statt mit Java - lösen. Dass Du nicht weiterkommst, liegt wahrscheinlich daran, dass Du ein Buch liest und zu wenig Probleme mit Python löst. Auf letzteres kommt es an, um Fortschritte zu machen.
Melewo
User
Beiträge: 320
Registriert: Mittwoch 3. Mai 2017, 16:30

Sehe ich ähnlich wie pixewakb. Bücher übers Programmieren sind nicht dafür gedacht, dass ein Einsteiger diese komplett durchliest, sondern einem ersten Teil als Einstieg, der muss sein und dann den Rest als Nachschlagwerk. Nehme Dir ein Projekt vor, wenn Du nicht weiter weist, dann schaue in ein Buch und wenn sich dann immer noch kein Lösungsansatz bietet, suche im Internet und probiere alle Ansätze durch, die Du so findest. Nach einigen schlaflosen Nächten mit einem Problem kommt dann ein Aha-Erlebnis und Du wirst erstaunt über Deine Fähigkeiten sein. Nach einigen Jahren wirst Du dann umgekehrt in Deinem ersten Projekt sehr vieles finden, was Du dann wesentlich besser geschrieben hättest.
nuhakan
User
Beiträge: 51
Registriert: Donnerstag 11. August 2016, 11:42

Danke!

Was ich etwas falsch gemacht habe, ist mir klar. :wink: Ich habe auch solche Webs mit gemachten Übungen probiert. Ich fühle, dass ich nicht lerne. Vielleicht bin ich für die Programmierung nicht geeignet. :K :lol:

Wie gesagt, ich muss mit etwas anfangen und gucke was ich schaffe. Ich bin auch auf der Suche nach einer Gruppe in meiner Stadt. Die Idee mit dem nächsten Buch war einfach keine Pause "am Lernen" zu machen. Ich finde nicht verkehrt, ein gutes Buch in den Hände haben.

Grüße.
Melewo
User
Beiträge: 320
Registriert: Mittwoch 3. Mai 2017, 16:30

Wenn Du das wirklich nur als Hobby betreibst und nicht irgendwie beruflich benötigst, dann verstehe ich Deine Vorgehensweise nicht wirklich. Ein Hobby beginnt man nicht nur mit viel lernen, sondern mit betreiben und das Lernen kommt nach und nach.

Ob Du noch Gleichgesinnte in Deiner Nähe findest, keine Ahnung, doch so einfach ist das nach Schule, Ausbildung oder Studium in der Regel nicht mehr. Ist ja kein Hobby, welches gemeinschaftlich in Vereinen gepflegt und betrieben wird. Eher würde ich Dir halt empfehlen, eine Webseite einzurichten, auf der Du Deine Projekte vorstellst und anbietest. Mit wem teilst Du Deine Lernfortschritte?
Benutzeravatar
pixewakb
User
Beiträge: 1405
Registriert: Sonntag 24. April 2011, 19:43

@nuhakan - schau dir mal die Seite http://www.gailer-net.de/tutorials/java/java-toc.html mit den Aufgaben an. Das sind sehr einfache Sachen, die man mit den grundlegenden Befehlen lösen kann. Dann machst Du m. E. Fortschritte und siehst ein Ergebnis.
BlackJack

@pixewakb: Die Frage ist ob man da nicht Gefahr läuft Java zu lernen, auch wenn man das dann in Python-Syntax schreibt. Denn Python Is Not Java, dass heisst idiomatisches Java ist selten idiomatisches Python.
Benutzeravatar
pixewakb
User
Beiträge: 1405
Registriert: Sonntag 24. April 2011, 19:43

Oh, gut das Du das schreibst! Ich meine nicht, dass er das Tutorial bearbeiten soll, sondern nur die Aufgaben. Ich habe mir die ersten Aufgaben gerade noch mal angesehen und sie sind nicht so gut, wie ich das in Erinnerung hatte.

Im Kern geht es um Sachen wie kleine Berechnungen durchführen (Ware A: Preis 10, Ware B: Preis 12; Kunde kann Ware A oder B mit unterschiedlichen Mengen kaufen -> Bestellabwicklung; gerne auch Flächeninhalt im Dreieck o. ä. berechnen). Ich habe davon viel lernen können.
Antworten