Eure Meinung zu Python

Hi!

Ich bin vor kurzem auf die Programmiersprache Python gestoßen. Das Ganze scheint ja sehr flexibel und umfangreich zu sein und v.a. plattformunabhängig.

Welche Vor- und Nachteile gibt es gegenüber C/C++/Java?

Ist es sinnvoll Anwendungen mit graphischen Oberflächen in Python zu schreiben? So wie ich das bisher gesehen habe, muss man die einzelnen Steuerelemente umständlich per Quellcode einbinden.

Kann man mit Python auch Webseiten(-skripts) entwicklen?

Bitte schreibt mir Eure Meinung und Erfahrungen mit der Python.

Mit freundlichen Grüßen, Andi

Hallo,

Ich bin vor kurzem auf die Programmiersprache Python gestoßen.
Das Ganze scheint ja sehr flexibel und umfangreich zu sein und
v.a. plattformunabhängig.

relativ, ja.
Die Standardbibliotheken sind sicher nicht so umfangreich wie bei Java (wobei das auch ein sehr hoher Standard ist), und es ist in Teilen nicht so schnell wie Java (weil es z.B. die Floatingpoint-Arithmetik des verwendeten Prozessors übernimmt, anstatt wie Java eine eigene zu definieren).

Ich kann dir dieses Video hier empfehlen: http://video.google.de/videoplay?docid=1135114630744…

Welche Vor- und Nachteile gibt es gegenüber C/C++/Java?

Ist es sinnvoll Anwendungen mit graphischen Oberflächen in
Python zu schreiben?

Das hängt von der Anwendung ab.

So wie ich das bisher gesehen habe, muss
man die einzelnen Steuerelemente umständlich per Quellcode
einbinden.

Das muss man mit C/C++/Java auch machen - außer man verwendet entsprechende Werkzeuge. Keine Ahnung, ob es sowas auch für Python gibt…

Kann man mit Python auch Webseiten(-skripts) entwicklen?

Ja, das ist eine der Hauptanwendungszwecke.

Bitte schreibt mir Eure Meinung und Erfahrungen mit der
Python.

Erfahrungen habe ich nur wenige, meine Meinung ist: nette, relativ Lisp-ähnliche Programmiersprache, relativ sauber (aber nicht 100%), aber gewöhnungsbedürftig. Für Liebhaber der Objektorientierung in Verbindung mit dynamischer Typisierung gut geeignet.

Grüße,
Moritz

Hallo,

Nachdem Moritz schon vieles geschrieben hat,
noch ein paar Anmerkungen von meiner Seite.

Ich bin vor kurzem auf die Programmiersprache Python gestoßen.
Das Ganze scheint ja sehr flexibel und umfangreich zu sein und
v.a. plattformunabhängig.

Es ist eine der „neuen“ Very-High-Level-Sprachen

  • Perl (1987)
  • Python (1991)
  • PHP (1993, 1995)
  • Ruby (1995)
    von denen jede ein etwas anderes Konzept hat.

Welches Konzept hinter der jeweiligen Skriptsprache
nun genau für wen am besten zu handhaben ist, kann
imho nur durch Ausprobieren herausgefunden werden.

Python macht auf mich den Eindruck von „Macintosh“
(etwas abgehoben) oder von „Pascal“ (hinderliche
Sprachvereinbarungen). Aber wie gesagt, es gibt
Leute die nehmen es sehr gerne und bauen gute
Sachen damit.

Mir selbst ist es viel zu umständlich, da es
sich in vieler Hinsicht wie C verhält (Typkon-
versionen) und man, verglichen mit den anderen
Sprachen mehr tippen muss :wink:

Andere Sprachen verhalten sich nach dem DWIM-Prinzip
(do what I mean), beispielsweise ist in Python

 a=1
 print a + 0.4

in Python 1.3999999999999999, in Perl 1.4
Richtig ist beides „irgendwie“, aber …

Welche Vor- und Nachteile gibt es gegenüber C/C++/Java?

Es sind Skriptsprachen, diese werden beim
Ausführen angeschaut und in einen temporären
Bytecode übersetzt - und dann erst ausgeführt.
Ein Kompilierschritt entfällt. Dafür sind sie
bei vielen Operationen eben langsamer. Vorteil
ist gegen Java und C die bestechende Einfachheit
bei der Lösung „komplizierter“ Dinge.
Beispielsweise könntest Du mit einem „Programm“
aus 3 Zeilen in Perl

 local $/; $\_=;
 $h{$1} ++ while /(\w+)/g;
 print "$\_ : $h{$\_}\n" for sort {$h{$a} $h{$b}} keys %h;

… die Worthäufigkeit beliebiger Texte sortiert ausgeben. Ich
hab mal auf die Schnelle Perl genommen, weil ich in Python
dazu viel länger gebraucht hätte) => Versuch das mal in Java :wink:
(Aufruf mit: perl dasprogramm.pl textdatei.txt)

Ist es sinnvoll Anwendungen mit graphischen Oberflächen in
Python zu schreiben? So wie ich das bisher gesehen habe, muss
man die einzelnen Steuerelemente umständlich per Quellcode
einbinden.

http://www.pygtk.org/index.html
http://www.pythonware.com/library/tkinter/introduction/

Kann man mit Python auch Webseiten(-skripts) entwicklen?

Kann man, ist aber etwas umständlicher als in
anderen Sprachen. Meistens schreibt man einen
‚Handler‘ in Python für einen Verzeichnisbaum
und in Abhängigkeit vom angeforderten Web-Pfad
baut man die Response zusammen. Es gibt aber
bereits mehrere solcher verschiedener (fertigen)
Python-Frameworks, so dass es am Anfang sicher
besser ist, eines zu nehmen.

Bitte schreibt mir Eure Meinung und Erfahrungen mit der
Python.

Ich hab mal eine Weile Python betrieben, es sagte mir
nicht zu. Vielleicht muss man sich auch länger damit
befassen, wer weiss …

Grüße

CMБ