Scriptsprache Python

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
pollux
Beiträge: 15
Registriert: 07.05.2004 17:31:25

Scriptsprache Python

Beitrag von pollux » 09.05.2004 19:28:59

hallo,

ich habe vor mir eine Programmiersprache bzw. Scriptsprache anzueignen. Nun bin ich auf Python gestoßen, die ja immer beliebter zu werden scheint. Jetzt habe ich die Frage, ob schon jemand Erfahrungen mit Python gemacht hat und mir Buchempfehlungen geben kann. Ist diese Sprache für Anfänger geeignet? Zudem würde ich gerne wissen, wie ihr diese Scriptsprache im Bezug zu anderen Sprachen einschätzt (leicht oder schwer). Ich habe gehört, dass die Syntax relativ einfach und gut strukturiert sein soll.

gruss

markus

Benutzeravatar
penthesilea
Beiträge: 147
Registriert: 19.02.2003 23:51:24
Wohnort: Ulm

Beitrag von penthesilea » 09.05.2004 22:22:24

Hallo,
ich lerne auch gerade Python und für den Anfang hat mir diese Seite http://www.cl.uni-heidelberg.de/kurs/ws03/prog1/ sehr geholfen. Schade nur dass der Kurs für Computer-Linguisten ist und nicht die typischen Informatiker Übungen hat und dass sie nur sehr kurz auf Objektorientierung eingehen Und ansonsten kann ich dir nur http://www.python.org empfehlen.
Ich weiss nicht, ob Python für absolute Programmieranfänger geeignet ist. Die Syntax ist zwar einfach, aber Syntax ist meiner Meinung nach das kleinste Problem. Und Python ist noch eine (tschuldigung für den Ausdruck) Freaksprache. Bei uns in der Unibibliothek gabs kein einziges Buch zu Python. Daher wäre es vielleicht besser eine weiter verbreitete Sprache wie Java zu nehmen um programmieren zu lernen.
Am besten finde ich es jedoch zuerst C zu lernen und dann auf eine "komfortablere" Programmiersprache zu wecheln, denn da lernt man von der Pieke auf. Ich habe zuerst Java gelernt und dann C. Und ja das heulen war/ist gross. Andersrum wäre es mir sicher nicht so gegangen.

Gruss penthesilea

Benutzeravatar
x-eniac
Beiträge: 660
Registriert: 12.03.2002 16:08:54
Wohnort: Wien
Kontaktdaten:

Beitrag von x-eniac » 09.05.2004 22:37:02

Ahhhrg!!!

Nein! Nicht C Lernen!!!
C ist zwar "das einzig Wahre" aber du musst dich mit vielen Sicherheitsproblemen herumschlagen und dich sehr viel mit "Verwaltungsaufgaben" rumärgern.
Java ist IMHO was für Vollprofis. Mit dem ganzen drum und drann an Objekt Orientierung verwirrt es den Anfänger wo es nur geht.

Perl, Python, Ruby, oder PHP sind einfache Interpretersprachen, welche dir viel Arbeit abnehmen. Sie haben eine aktive Community welche viele Tutorials bereitstellen.
Damit lernst du während du programmierst immer mehr dazu.
Wenn du dann irgendwann den Speed von C brauchst, ist der Umstieg nicht so schwer.
Traue niemanden der nicht einmal bis 2 zählen kann!
Meine Jabber ID: xeniac@jabber.at

Benutzeravatar
pdreker
Beiträge: 8298
Registriert: 29.07.2002 21:53:30
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Nürnberg

Beitrag von pdreker » 10.05.2004 00:47:32

Ich würde auch erstmal empfehlen mit einer "schwach getypten" Sprache (Skriptsprache) anzufangen. Da kann man sich relativ flott einarbeiten, und bekommt Ergebnisse. Bei Python kann man auch einfach 'mal die Python Konsole öffnen und dort mit Befehlen rumprobieren.

Das finde ich auch in der Hinsicht den richtigen Ansatz, als das Programmieren zu einem Grossteil einfach Erfahrungsbasiert ist. Je früher man praktische Erfahrungen und Erfolge sammelt, um so besser wird man.

C/C++ ist wirklich eher was für später. Gerade die ganze Pointerwuselei in C ist extrem fehleranfällig und subtil. C++ ist in der Hinsicht nur marginal besser...

Patrick
Definitely not a bot...
Jabber: pdreker@debianforum.de

Benutzeravatar
Joghurt
Beiträge: 5244
Registriert: 30.01.2003 15:27:31
Wohnort: Hamburg
Kontaktdaten:

Beitrag von Joghurt » 10.05.2004 13:08:38

Ich würde dir auch empfehlen, deine ersten Schritte mit Python zu machen; dort kannst du alles lernen, was man heute als "moderne" Programmierung bezeichnet; sogar funktionelle Programmierung ist drin. Das ist das tolle an Python; es unterstüzt alle wichten Programmiermethoden (imperativ, objekt-orientiert und funktional), nach einer Weile wirst du eine Art zu programmieren finden, die du magst, und kannst dir dann die deine spätere Sprache danach aussuchen, wenn du ein Fan von funktionelle Programmierung bist, wirst du bei Lisp oder Haskell landen, sonst bei C/C++.

Und wenn man erstmal programmieren kann, fällt es einem nicht so schwer, sich mit den Strengen Sprachen wie C++ zurechtzufinden.

BTW: Immer mehr Programmierer scheinen ihr Programme in Python vorzudesignen (da das sehr schnell geht: Verhältnis Python zu C++-Code angeblich 1 zu 10 Zeilen) und schreiben später die rechenintensiven und zeitkritischen Teile in C++, den man einfach in Python einbinden kann.

Benutzeravatar
Mr_Snede
Beiträge: 2323
Registriert: 08.07.2003 13:48:49
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Ruhrpott

Beitrag von Mr_Snede » 10.05.2004 18:11:36

Hallo pollux,
ich bin auch blutiger Anfänger, was das Programmieren angeht.
Um dich für eine Sprache zu entscheiden, such dir ein für dich interessantes Standartproblem raus und versuche es jeweils in den Sprachen umzusetzen, die dich interessieren. Du wirst schnell merken, was dir gefällt.

Ich habe mich für Python entschieden, weil ich nach etwas rumspielen mich schon einiger Ergebnisse erfreuen durfte.
Auch wenn diese eher in den Bereich Scripting fallen, sie machen Lust auf mehr und sind nicht nur Beispielaufgaben, sondern kleine Helferlein.
So macht programmierenlernen spass, auch wenn man nur an einigen Wochenenden etwas Zeit findet.

Meine Empfehlung zum Programmierenlernen allgemein:
- Schau dir Beispielaufgaben aus Tutorials an und versuche sie zu verändern.
Auch wenn es nur klitzekleine Änderungen sind, wie zB Buttonbeschriftungen - du lernst Quellcode zu lesen.
- Versuch möglichst früh eigene Progrämmelchen zu schreiben, die dir bei irgendetwas helfen.
Das ist eine andere Motivation als nur ein Tutorial durchzuarbeiten.

Bei Ebay giebt es immer wieder Bücher deutlich unter 10 Euro.
Ich empfehle eine kleine Referenz für den Überblick und ein ausführliches Buch mit Problemlösungen.

Und zu guter letzt noch einige Python Links, die mir schon weiter geholfen haben:
http://www.python-forum.de - Das deutsche Pythonforum
http://www.way2python.de/index.shtml - beachte die Rezensionen deutscher Python Bücher
http://www.schronen.de/python/index_html - Webseite zu Python for Kids
http://starship.python.net/crew/theller/pyhelp.cgi Python Referenz online - suche
http://pydoc.org/2.3 - Python Modulüberblick hier für die Version 2.3

Also Lieblingseditor geschnappt und losprogrammiert - have a lot of fun!
Sebastian

pollux
Beiträge: 15
Registriert: 07.05.2004 17:31:25

Beitrag von pollux » 12.05.2004 17:50:52

danke für die vielen und hilfreichen Informationen :wink:
ich hab mir mal das buch Python für Kids bestellt. Werd mich gleich bei erhalt dran machen und Python lernen. Mal sehen was diese Scriptsprache so zu bieten hat :D

gruß

markus

Benutzeravatar
g-henna
Beiträge: 733
Registriert: 03.11.2003 14:59:56
Wohnort: Berlin

Beitrag von g-henna » 12.05.2004 21:43:55

Hi!

Zu konvertieren brauch man dich ja nich mehr, du scheinst ja schon auf dem richtigen Weg zu sein... *grin*
Wenn du Python für Kids gut findest, poste mal bitte auf jeden Fall, ich bin am Überlegen, ob man das verschenken kann. Ansonsten... Mark Lutz - "Learning Python" bzw. "Programming Python", beide O'Reilly.

Bye
g-henna
follow the penguin...

pollux
Beiträge: 15
Registriert: 07.05.2004 17:31:25

Beitrag von pollux » 14.05.2004 20:32:20

@g-henna

hi,

ich hab jetzt mal die ersten drei Kapitel durchgearbeitet. Also das Buch an sich gefällt mir sehr gut. Ist didaktisch gut aufgebaut, und es wird alles verständlich erklärt. Woran man sich anfangs irritieren könnte ist, dass das Buch für Teenager konzipiert wurde, was sich durch einen lockeren Schreibstil und von der Aufmachung vom Buch her bemerkbar macht. Was nicht heißen soll, dass es nichts für Erwachsene ist. Was mich am Anfang etwas verwirrte war, dass der Autor in den ersten drei Kapitel für Variablen das Wort "Name" verwendet hat, und für Argumente oder Objekte hat er das Wort "Ding" benutzt. Ansonsten finde ich das Buch sehr gut, ich denke wenn man anfangen will Python zu lernen, und noch keine Programmiersprache beherrscht, kann man mit dem Buch nichts falsch machen, auch als Erwachsener.

Benutzeravatar
sebas
Beiträge: 419
Registriert: 15.01.2004 19:02:29
Wohnort: Nijmegen / NL
Kontaktdaten:

Beitrag von sebas » 26.05.2004 14:27:04

Ich programmiere seit ein paar Jahren in python, und es gefaellt mir sehr gut.

Ich habe die Erfahrungen gemacht, dass python sich sehr schnell (und fehlerfrei!) schreiben laesst, und dass es einige interessante Hooks gibt, mit denen man seinen Code chiquer und uebersichtlicher machen kann.

Etwas stoert mich, dass es scheinbar nur mit merkwuerdigen Workaround moeglich ist, um 'static methods' zu definieren. Ich bin mir immernoch nicht ganz sicher, ob es ein uebler Hack ist, oder ob sowas so uebel ist, dass man die Finger davon lassen sollte.
http://aspn.activestate.com/ASPN/Cookbo ... cipe/52304
Magic is always the best solution -- especially reliable magic.

mipietsch
Beiträge: 7
Registriert: 23.05.2004 06:56:23
Wohnort: Berlin

Beitrag von mipietsch » 09.06.2004 14:11:13

penthesilea hat geschrieben: Ich weiss nicht, ob Python für absolute Programmieranfänger geeignet ist.
Wir benutzen es in der Schule, um Schueler ins Programmieren einzufuehren ... reicht dies als Antwort?

Micha

Benutzeravatar
g-henna
Beiträge: 733
Registriert: 03.11.2003 14:59:56
Wohnort: Berlin

Beitrag von g-henna » 09.06.2004 18:11:30

Hi
mipietsch hat geschrieben:
penthesilea hat geschrieben:Ich weiss nicht, ob Python für absolute Programmieranfänger geeignet ist.
Wir benutzen es in der Schule, um Schueler ins Programmieren einzufuehren ... reicht dies als Antwort?
Leicht OT: Ich brauch dringendst leicht verständliche Argumente, warum man in der Schule nicht mit C (++) proggen sollte (im völlig unerfahrenen in-Grundkurs)...

Bye
g-henna
follow the penguin...

tylerD
Beiträge: 4068
Registriert: 10.07.2002 17:34:13
Wohnort: Halle/Saale
Kontaktdaten:

Beitrag von tylerD » 09.06.2004 20:04:24

g-henna hat geschrieben: Leicht OT: Ich brauch dringendst leicht verständliche Argumente, warum man in der Schule nicht mit C (++) proggen sollte (im völlig unerfahrenen in-Grundkurs)...

Bye
g-henna

Man kann sich gleich aufs "programmieren" stürtzen, und kann so Dinge lernen (einfache Strukturen, Abläufe, Programmierdesigns, Patterns) Grund: keine aufwendige Einarbeitung in IDE,Compiler,Linker;Wegfall der Verwaltungsaufgaben (Typstrenge, Speicherverwaltung) mit dennen ein Anfänger sich eigentlich am meisten rumschlägt

Eine gute Aufgabenstellung und sinnvollen Lehrplan nimmt einem die Sprache nicht ab, sie kann einem aber viel Zeit sparen und dadurch Zeit schaffen um mehr allgemeines Wissen zu vermitteln, welches dann in jeder Sprache anwendbar ist.

Noch ein paar Argumente: http://www.python.g2swaroop.net/byte/ch01s02.html

cu

Olaf Dietsche
Beiträge: 520
Registriert: 12.06.2003 23:18:50
Wohnort: Siegburg

Beitrag von Olaf Dietsche » 10.06.2004 14:09:02

g-henna hat geschrieben:Leicht OT: Ich brauch dringendst leicht verständliche Argumente, warum man in der Schule nicht mit C (++) proggen sollte (im völlig unerfahrenen in-Grundkurs)...
Beim Lernen ist es wichtig, Erfolgserlebnisse zu haben, sonst macht es keinen Spaß.

Mit einer Skriptsprache hast du die wesentlich schneller und einfacher, als mit einer Compilersprache. Die Turnaroundzeiten sind wesentlich kürzer:
  • Skript: schreiben - starten
    Compiler: schreiben - compilieren - linken - starten

Antworten