wo/wie/warum habt ihr python gelernt?

Alles, was nicht direkt mit Python-Problemen zu tun hat. Dies ist auch der perfekte Platz für Jobangebote.
encbladexp
User
Beiträge: 61
Registriert: Freitag 7. März 2003, 19:28
Kontaktdaten:

Dienstag 31. Oktober 2006, 15:58

Warum Python?
  • Leicht erlernbar
    Objektorientiert
    Erweiterbar
    Lesbar
    Universell bzw. flexibel
Python ist für mich genau die Sprache die ich immer suchte... Was will man mehr...

Wie ich zu Python kam?

Ich wollte mir einfach ein paar Programme die es so noch nicht gar selber schreiben, was will man mehr...

mfg Betz Stefan
murph
User
Beiträge: 622
Registriert: Freitag 14. April 2006, 19:23
Kontaktdaten:

Dienstag 31. Oktober 2006, 21:34

warum magic?
weil man alles in funktionen reintuen muss.
weil man allein zur ausgabe files importieren muss.
und noch weniger magic:
uneinheitliche bibliotheken, man muss sich auf den jeweiligen compiler einstellen, was ist daran noch frei?
ich habe im buch gelesen, dass sich der borland(?) die variablen, die im header einer for-schleife deklariert werden, ENTGEGEN der konvention trotzdem merkt und einen fehler wirft, wenn man in zwei schleifen die gleiche variable deklarieren will. aber sonst soll das die sauberste arbeitsweise sein^^
http://www.cs.unm.edu/~dlchao/flake/doom/
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Dienstag 31. Oktober 2006, 22:59

murph hat geschrieben:weil man alles in funktionen reintuen muss.
Empfinde ich weniger als Magic sondern Idee zur strukturierung. Java ist da wesentlich schlimmer, wo man alles In Klassen packen muss, obwohl manchmal Klassen einfach nur stören.
murph hat geschrieben:weil man allein zur ausgabe files importieren muss.
Halte ich nicht so sehr für magic, eher minimalismus. Ohne print wäre das in Python genauso, siehe sys.stdout.write.
murph hat geschrieben:uneinheitliche bibliotheken,
Das die Bibliotheken seltsame APIs haben kann schon sein. Dafür kann die Sprache aber nichts. Okay, dass sie keine so umfassende Stdlib wie Python mitbringt. Stimmt. Aber C++ hat Qt, was ganz brauchbar sein soll, nicht nur für GUIs.
murph hat geschrieben:man muss sich auf den jeweiligen compiler einstellen, was ist daran noch frei?
Der GCC ist zum Beispiel frei. Free as speech, not as beer. Ansonsten verstehe ich die Aussage nicht.
murph hat geschrieben:ich habe im buch gelesen, dass sich der borland(?) die variablen, die im header einer for-schleife deklariert werden, ENTGEGEN der konvention trotzdem merkt und einen fehler wirft, wenn man in zwei schleifen die gleiche variable deklarieren will.
Naja, das ist eben sache der jeweiligen Implementation. Ich kann jetzt auch einen komplett kaputten Python-Interpreter schrieben und sagen die Sprache ist daran schuld. Stimmt aber dann trotzdem nicht.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
murph
User
Beiträge: 622
Registriert: Freitag 14. April 2006, 19:23
Kontaktdaten:

Donnerstag 2. November 2006, 16:47

Der GCC ist zum Beispiel frei. Free as speech, not as beer. Ansonsten verstehe ich die Aussage nicht.
kann man denn gcc auch auf nem windows-rechner installieren?
aber zum beispiel beim includen von bibliotheken weiß man nie, was der jeweilige compiler mitbringt. auch die syntax ist meiner meinung nach nicht gut genug geregelt, ich erinnere mich nur noch dunkel an das using namespace, was mitunter nicht ganz unproblematisch war.
Naja, das ist eben sache der jeweiligen Implementation. Ich kann jetzt auch einen komplett kaputten Python-Interpreter schrieben und sagen die Sprache ist daran schuld. Stimmt aber dann trotzdem nicht.
aber trotzdem kann es dich daran hindern, diese programmiersprache viel zu nutzen.
http://www.cs.unm.edu/~dlchao/flake/doom/
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Donnerstag 2. November 2006, 16:54

murph hat geschrieben:kann man denn gcc auch auf nem windows-rechner installieren?
Ja, kann man.
murph hat geschrieben:aber zum beispiel beim includen von bibliotheken weiß man nie, was der jeweilige compiler mitbringt. auch die syntax ist meiner meinung nach nicht gut genug geregelt, ich erinnere mich nur noch dunkel an das using namespace, was mitunter nicht ganz unproblematisch war.
Das using namespace ist soweit ich weiß, teil des ISO C++ Standards (kann mich auch irren) und sollte daher von modernen C++ Compilern verarbeitet werden können.
Nein, man kann sich nicht mit cl.exe (MSVC++ 6) rausreden, der ist von 1998 und keineswegs mehr modern.
murph hat geschrieben:
Naja, das ist eben sache der jeweiligen Implementation. Ich kann jetzt auch einen komplett kaputten Python-Interpreter schrieben und sagen die Sprache ist daran schuld. Stimmt aber dann trotzdem nicht.
aber trotzdem kann es dich daran hindern, diese programmiersprache viel zu nutzen.
Dann nimmst du eben eine Implementation der Programmiersprache, die sich (so gut wie möglich) an die Standards hält. Zum Beispiel GCC. Auch Hugs 98 bietet eine fast komplette Implementation seiner Sprache, GHC implementiert sogar den vollen Sprachumfang samt einiger Erweiterungen.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
murph
User
Beiträge: 622
Registriert: Freitag 14. April 2006, 19:23
Kontaktdaten:

Donnerstag 2. November 2006, 16:59

dann werde ich, falls ich noch mal in die welt von C/C++ kommen sollte, gcc-konform schreiben, oki...
http://www.cs.unm.edu/~dlchao/flake/doom/
BlackJack

Donnerstag 2. November 2006, 17:27

ISO C/ISO C++ konform wäre vielleicht besser.
murph
User
Beiträge: 622
Registriert: Freitag 14. April 2006, 19:23
Kontaktdaten:

Donnerstag 2. November 2006, 17:35

also, wenns sich miteinander vereinbaren lässt, dann schon.^^
http://www.cs.unm.edu/~dlchao/flake/doom/
Python 47
User
Beiträge: 574
Registriert: Samstag 17. September 2005, 21:04

Donnerstag 2. November 2006, 18:37

Warum hab ich Python gelernt? :?

Naja ich war nach der Suche nach einer Programmiersprache, hab in nem Forum gefragt welche Anfängerfreundlich ist und trotzdem "mächtig". Da hab ich einige Antworten bekommen die ich nicht beachtete habe, da ich schon länger in dem Forum war und beurteilen kann, wer Ahnung hat. Dann kam die entscheidende Antwort. Der, der am meisten Ahnung von Programmieren hat in dem Forum(kann so etwa 10 Sprachen) hat gesagt ich soll mit Python anfangen. Und da dachte ich, wenn der 10 Sprachen kann, wird der schon wissen welche gut ist. Python ist übrigens seine Lieblingssprache. So und dann hab ich halt auf gut Glück mir Python angeschaut und bin keineswegs enttäuscht worden. :D
mfg

Thomas :-)
CM
User
Beiträge: 2464
Registriert: Sonntag 29. August 2004, 19:47
Kontaktdaten:

Donnerstag 2. November 2006, 23:10

Leonidas hat geschrieben: Das using namespace ist soweit ich weiß, teil des ISO C++ Standards (kann mich auch irren) und sollte daher von modernen C++ Compilern verarbeitet werden können.
O.T.: Das ist korrekt. Außerdem kann man leicht überprüfen, ob eine best. Bibliothek auf einer Maschine (das ist ja nicht an den Compiler gekopplet!) vorhanden ist.

Christian
querdenker
User
Beiträge: 424
Registriert: Montag 28. Juli 2003, 16:19
Wohnort: /dev/reality

Freitag 3. November 2006, 01:42

ok, me too:

Kurze Vorgeschichte: Ich habe irgendwann Anfang der Achziger in der Schule meine ersten Erfahrungen mit BASIC und Assembler auf einem Apple-II gemacht. Dann kam eine Lehre, während der es dann BASIC auf C/CPM-Maschinen und CNC für Fräsen gab.
Anfang der Neunziger habe ich dann mit MS-QuickC auf einem 286er angefangen, es dann aber relativ schnell wieder gelassen.
Ende der Neunziger habe ich dann während einer zweiten Ausbildung (zum TAI) Bekanntschaft mit Pascal (TP 6) und C++ gemacht. Zum Teil lag es an den Ausbildern, zum Teil an der Syntax (Semikola, geschweifte Klammern) der Sprachen, das ich mit beiden nie so wirklich warm geworden bin.

Neuzeit: Mitte 2002 suchten wir in der Firma nach einer Möglichkeit, über http hereinkommende XML-Files mit maximal 1000 Datensätzen zu parsen und auszuwerten. Mein Kollege hat es damals (ursprünglich nur zum testen) mit PHP realisiert, während ich mich erstmal nach einer Programmiersprache umgesehen habe, die mir von den Möglichkeiten, der Philosophie und dem Syntax gefällt. Das war Python (2.2 auf RH).
Naja, seitdem mache so ziemlich alles, was für mich anliegt, in Python.
Zum Beispiel AD-Abfragen, Datenbankauswertungen, Abrechnungsdaten ermitteln, kleine Plugins für nagios.
Benutzeravatar
jens
Moderator
Beiträge: 8461
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Freitag 3. November 2006, 11:11

querdenker hat geschrieben:...ersten Erfahrungen mit BASIC und Assembler auf einem Apple-II gemacht.
Uhi... So einen hab ich hier im Büro noch rumstehen, mit Grünmonitor und eiserner Tastatur ;)

CMS in Python: http://www.pylucid.org
GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Freitag 3. November 2006, 12:17

Hi!

Nachdem mich Microsoft mit der Umstellung von "Visual Basic" nach "Visual Basic.NET" genervt hat, suchte ich nach einer Programmiersprache, die ohne große Umstände unter Windows und Linux läuft.

Also habe ich mir 99 Bottles of Beer angesehen. So konnte ich zumindest schon mal einige Programmiersprachen ausschließen. :D

Von allen Seiten wurde mir zu C/C++ geraten. Dann kaufte ich mir zwei Bücher und arbeitete mich in C++ ein.
Je mehr ich damit zu programmieren versuchte, desto mehr bin ich drauf gekommen, dass es gar nicht so einfach ist, mit C++ ein Programm zu schreiben das sowohl unter Linux wie auch unter Windows läuft. Allein der Zugriff auf Dateien oder auch das Auslesen von Ordnergrößen unterscheidet sich. Ich wollte nicht für jedes Betriebssystem die API lernen. Das sollte mir schon die Programmiersprache abnehmen. Also habe ich C++ aufgegeben. Und wenn ich ehrlich bin, dann habe ich C++ vergessen. Wenn ich damit wieder ein Programm schreiben wollte, dann müsste ich alles nocheinmal neu lernen.

Zwischendrinn versuchte ich mich an MONO. Aber es gab immer wieder Unterschiede, die man berücksichtigen musste wenn das Programm unter Windows und Linux funktionieren sollte. Auch so einfache Dinge wie die Verwendung von Kommandozeilenparametern trieben mir (Wut-)Schweißperlen ins Gesicht.

Ruby schien ein guter Kandidat für mich zu sein. Allerdings schienen mir daran einige Dinge nicht logisch und wie man damit GUI´s programmieren könne, drüber schwiegen sich alle aus.

Wenn man Informationen über Ruby sucht, dann findet man auch immer wieder Infos über Python. Und so habe ich von Python erfahren. Auf der Python-Homepage fand ich auch einen Link zum deutschen Python-Tutorial. --> durchgelesen. Dann kahmen noch ein paar Bücher ("Einstieg in Python", "Python für Kids", "Python - Kurz & Gut", "Objektorientierte Programmierung mit Python", "Python - GE-PACKT",...) und alles was ich sonst noch an deutschsprachigen Tutorials im Internet gefunden habe. Seit dem Python-GTK-Tutorial versuche ich mich auch an englischsprachigen Tutorials und Büchern. Allerdings muss ich zugeben, dass ich mich damit immer noch ziemlich hart tu.

Wie auch immer. Python bietet mir "fast" alles, was ich mir erwartet habe. (Die Klicki-Bunti-IDE wie bei Visual Basic -- die fehlt mir ab und zu doch noch. :oops: )
- Die Programme laufen unter Linux und Windows.
- Man kann damit CGI´s programmieren.
- Mit Zope habe ich volle Kontrolle über die Webprogrammierung.
- Plattformübergreifende GUI´s programmiere ich mit wxPython.
- Batteries included!!!

Unter anderem, mag ich Python deshalb, da der damit produzierte Quellcode meist gut aussieht! Klingt komisch, aber ist für mich sehr wichtig.
Den Quellcode eines guten Python-Programms anzusehen und durchzulesen, ist für mich teilweise wie das Betrachten eines Kunstwerkes. So ist das Programmieren in Python für mich nicht wie arbeiten, sondern wie das Zeichnen eines Bildes -- oder wie das Erstellen von interessanten Fahrzeugen mit Legotechnik.
Ich spiele zwar schon lange nicht mehr mit Legotechnik ( bin 32 und habe andere Interessen entwickelt ;-) ), aber das Programmieren mit Python und wxPython ist ein guter Ausgleich dafür. ;-)

lg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
BlackJack

Freitag 3. November 2006, 15:06

Ich habe mit BASIC auf 'nem Commodore 64 angefangen. Das war furchtbar langsam und nutzte die Möglichkeiten, die die Hardware dieses Rechners bietet, nicht voll aus, also folgte 6510 Assembler.

Dann gab's ein kleines Zwischenspiel von AmigaBASIC und REXX, davon ist aber kaum etwas hängengeblieben.

Auf dem PC ging's dann in der Schule in der Computer-AG mit GW-BASIC weiter, das sehr schnell durch QuickBASIC abgelöst wurde. (Juhuu, endlich keine Zeilennummern mehr).

Im Informatikunterricht haben wir dann Pascal, genauer TurboPascal 6.0, gelernt. Das war zu der Zeit auch in der Szene sehr angesagt, weil man ganz einfach im gleichen Quelltext eine Hochsprache mit Assembler mischen konnte. Was sich aus heutiger Sicht rächt -- fast alle Programme die ich damals geschrieben habe, lassen sich trotz FreePascal nicht einfach so portieren, weil sie 16-Bit Assembler enthalten und heute dummerweise ein Betriebssystem und Treiber zwischen den Programmen und den VGA-Registern der Grafikkarten stehen. :-)

Beim Wechsel von DOS zu Windows hatte ich mal kurz in C reingeschnuppert und es für Windowsprogrammierung untauglich befunden. Die Windows-C-API mit den ganzen Handles die dauernd in der Gegend herumgereicht wurden, fand ich scheusslich. Deshalb folgte das dunkle Kapitel VisualBasic. Ich schäme mich ja auch ganz doll, aber damit konnte man halt wesentlich einfacher Windowsprogramme schreiben.

Mit dem Studium kamen dann Haskell und Java. Später dann noch C in den Veranstaltungen Betriebssysteme und Systemsicherheit und MIPS-Assembler in Rechnerorganisation. Das Projekt in der Datenbankvorlesung haben wir in PHP geschrieben. Und da man immer eine Sprache für kleine "Wegwerfskripte" gebrauchen kann, habe ich Perl gelernt.

Und mit Perl hatte ich dann irgendwann ein riesiges Problem mit einer verschachtelten Datenstruktur mit Referenzen, das ich einfach nicht gelöst bekommen habe. Da habe ich mich umgeschaut in welcher Sprache ich das vielleicht leichter hinbekomme und bin auf Python gestossen. Und seit dem dabei geblieben. :-)

Mittlerweile interessiere ich mich ein wenig für Programmiersprachen und schaue mir immer mal wieder eine neue an. C++ habe ich erst nach Python kennengelernt und muss sagen ich habe im Grunde aufgegeben. Es ist so deprimierend wenn man weiss das es viel einfacher ginge. :-)

Den Schritt von C zu OOP hat Objective-C meiner Meinung nach viel besser hinbekommen, aber leider ist das NextStep-/OpenStep-/Cocoa-Framework so eine Insellösung.

Dann muss ich mich noch mit 4GL und der Korn Shell rumschlagen. Das mache ich nicht ganz freiwillig -- ich werde mit Geld bedroht. ;-)

Meine Lieblingssprachen sind Python, Io und C und vielleicht noch Nemerle. Wobei Io eher Spielerei ist, weil die Sprache aktiv entwickelt wird und die API ein ziemlich bewegliches Ziel ist.
EnTeQuAk
User
Beiträge: 986
Registriert: Freitag 21. Juli 2006, 15:03
Wohnort: Berlin
Kontaktdaten:

Freitag 3. November 2006, 15:17

WoW Was Ihr alles schon gemacht habt ;) Waahnsinn! :D

Find ich sehr Spannend mal zu wissen, was eigentlich hinter den Leuten steht, die hier so helfen! :D


Musste mal raus

MfG EnTeQuAk
Antworten