Seite 1 von 2
Wozu ist Python überhaupt fähig?
Verfasst: Dienstag 16. Februar 2016, 01:50
von Shiva420
Hey Leute!
Ich habe vor einiger Zeit angefangen Python zu lernen, mich bis jetzt allerdings noch nicht damit auseinander gesetzt wozu Python überhaupt fähig ist.
Daher wollte ich euch einige Fragen stellen um der ganzen Sache ein wenig auf den Grund zu gehen.
1. Kann ich mit Python komplett Grafische Programme herstellen? Also komplett weg von der Konsole und nur GUI?
2. Kann ich mich mit Python in fremde Seiten 'einklinken' um dann (im Hintergrund?) dort z.B. Text in Textfelder einzugeben, Buttons zu klicken, Formulare abzuschicken und Daten gezielt abzufangen? Ich denke da an etwas wie z.B. einen Account Generator für Webseiten bzw. einen Bot für ein Bitcoin Glücksspiel.
3. Kann Java/C#/C++ was Python nicht kann? Wie weiß ich zu welcher Sprache ich greifen soll?
Ich hoffe die Fragen sind nicht zu Panne.
Danke euch für jede Hilfe!

Re: Wozu ist Python überhaupt fähig?
Verfasst: Dienstag 16. Februar 2016, 03:23
von DasIch
Shiva420 hat geschrieben:1. Kann ich mit Python komplett Grafische Programme herstellen? Also komplett weg von der Konsole und nur GUI?
Ja.
2. Kann ich mich mit Python in fremde Seiten 'einklinken' um dann (im Hintergrund?) dort z.B. Text in Textfelder einzugeben, Buttons zu klicken, Formulare abzuschicken und Daten gezielt abzufangen? Ich denke da an etwas wie z.B. einen Account Generator für Webseiten bzw. einen Bot für ein Bitcoin Glücksspiel.
Ja.
3. Kann Java/C#/C++ was Python nicht kann? Wie weiß ich zu welcher Sprache ich greifen soll?
Grundsätzlich ist es eher so dass bestimmte Dinge in einer Sprache einfacher sind als in einer anderen. Es ist selten dass man etwas in einer Programmiersprache gar nicht könnte, in einer anderen aber schon. Wenn du Programme für Windows schreibst macht es z.B. Sinn C# zu nehmen weil dass halt die Sprache ist die alle einschliesslich Microsoft dafür nehmen um Windows Anwendungen zu schreiben. Das muss man nicht tun aber man ist damit halt besser im Ökosystem integriert.
Grundsätzlich kannst du mit Python alles tun was du auch mit Java oder C# tun könntest. C++ erlaubt ein paar Dinge die man mit Python nicht machen könnte.
Welche Sprache du "nehmen" solltest hängt vom Projekt ab und die Antwort könnte durchaus sein nimm mehrere. Bei Web Anwendungen oder Computerspielen hast du mindestens 2-3 Programmiersprachen.
Re: Wozu ist Python überhaupt fähig?
Verfasst: Dienstag 16. Februar 2016, 12:49
von Shiva420
Das hört sich soweit ja schon einmal super an!
Ich habe irgendwo flüchtig gelesen dass es wohl möglich sein soll seinen Python Code fast problems in einem Zug in C(#/[++]) bzw Java Code übersetzen lassen zu können - Ist das soweit richtig oder stelle ich es mir vllt. einfacher vor als es ist?
So könnte ich im Notfall ja ein Python Programm für Windows User umübersetzen, oder?
Danke für die Hilfe soweit!
Greetz!
Re: Wozu ist Python überhaupt fähig?
Verfasst: Dienstag 16. Februar 2016, 13:16
von BlackJack
@Shiva420: Das ist nicht wirklich möglich. Python ist dazu zu verschieden zu C#, C++, und Java. Man kann das nicht einfach und sinnvoll komplett in eine dieser Sprachen übersetzen, weder manuell, noch automatisiert. Es sei denn man beschränkt sich auf Spracheigenschaften von Python die sich leicht in eine andere Zielsprache übersetzen lassen, allerdings stellt sich dann die Frage warum man nicht gleich in der anderen Sprache programmiert.
Es gibt Python-Interpreter für .NET (IronPython) und die JVM (Jython) und mindestens je einen Compiler der Python zu C oder C++ kompilieren kann, aber diese Ansätze in eine andere Sprache zu übersetzen haben dann entweder immer noch die Abhängigkeit zu CPython oder es ist nur eine Untermenge von Python verwendbar.
Man kann auch Python-Programme unter Windows laufen lassen. Dazu muss man die nicht in eine andere Sprache übersetzen.
Re: Wozu ist Python überhaupt fähig?
Verfasst: Dienstag 16. Februar 2016, 13:27
von Shiva420
Alles klar, dann halte ich mich in den anderen Sprachen ebenfalls Fit.
So wie ich das jetzt alles verstanden habe sollte es ja kein Problem sein wenn ich etwas kleineres wie z.B. einen Scraper in Python-Only umsetze.
Oder wenn ich Python-Only für Programme benutze die ausschließlich für mich gedacht sind.
Sollte ich etwas erstellen wollen was eher zum Verkauf gedacht ist bzw. größer/umfangreicher ist, so binde ich ebenfalls die C Reihe bzw Java mit ein bzw beschränke mich eher auf diese Sprachen.
Klingt ein bisschen schwammig, aber hoffe so in etwa könne man das ausdrücken.

Vielen Dank Leute! Mehr folgt ggf. nacher.

Re: Wozu ist Python überhaupt fähig?
Verfasst: Dienstag 16. Februar 2016, 13:40
von Dav1d
Shiva420 hat geschrieben:So wie ich das jetzt alles verstanden habe sollte es ja kein Problem sein wenn ich etwas kleineres wie z.B. einen Scraper in Python-Only umsetze.
Oder wenn ich Python-Only für Programme benutze die ausschließlich für mich gedacht sind.
Sollte ich etwas erstellen wollen was eher zum Verkauf gedacht ist bzw. größer/umfangreicher ist, so binde ich ebenfalls die C Reihe bzw Java mit ein bzw beschränke mich eher auf diese Sprachen.
Python ist nicht Perl

.
Du solltest die Sprache für ein Projekt wählen, die am meisten Sinn für das Projekt macht und nicht pauschal sagen, Programme die in Python geschrieben taugen nicht für eine Projektgröße > X. Man kann auch Programme die in Python geschrieben sind verkaufen (Source: Hab ich schon gemacht).
Re: Wozu ist Python überhaupt fähig?
Verfasst: Dienstag 16. Februar 2016, 13:54
von Shiva420
Schon klar dass man keine genaue Aussage treffen kann
Was mir die Wahl der Sprache nur so schwer macht ist die Tatsache das ja wie bereits gesagt man im Grunde jedes Programm mit fast jeder Sprache lösen kann.

Wenn die Möglichkeit das Problem mit einer Sprache zu lösen kein Anhaltspunkt ist, was denn dann?
Danke euch!
Re: Wozu ist Python überhaupt fähig?
Verfasst: Dienstag 16. Februar 2016, 14:45
von BlackJack
@Shiva420: Die eigenen Vorlieben, Vorgaben vom Auftraggeber, bestehende Programme und Infrastruktur, irgendwelche Hypes, Kollegen und deren Können/Vorlieben, und so weiter. Und dann gibt es natürlich auch noch Probleme die tatsächlich nicht mit jeder Sprache sinvoll lösbar sind. Embedded/Mikroprozessor-Kram kann man je nach Hardware mit Assembler, C, BASIC-Dialekten vom Chiphersteller, oder Forth lösen, ein grösseres Programm für den Desktop würde man heute eher in keiner dieser Sprachen mehr angehen, auch wenn es theoretisch möglich wäre.
Man wird als Programmierer in der Regel mehr als eine Sprache lernen, sollte sich aber auch bewusst sein, dass das wirkliche beherrschen einer Sprache Jahre dauert und auch regelmässiges ”praktizieren” erfordert. Man kann also nicht beliebig viele Sprachen bis zu einem Level lernen wo man sagen kann, dass man in der Sprache zuhause ist.
Welche Sprachen man lernen soll(te), ist dann leider eine sehr schwierige Entscheidung, kommt letztendlich auch ein bisschen darauf an was man beabsichtigt zu programmieren. Webentwicklungen werden um JavaScript kaum herum kommen, andererseits gibt es Programmierer von Anwendungen oder hardwarenahen Sachen, die mit JavaScript nichts zu tun haben. Man kann prima mit C# auskommen, ohne sich jemals Java angesehen zu haben. Aber umgekehrt geht es natürlich auch. Und wenn man neu ist, muss man halt irgendwo anfangen. Vielleicht nicht gerade mit C++ oder VisualBasic.

Re: Wozu ist Python überhaupt fähig?
Verfasst: Dienstag 16. Februar 2016, 15:06
von Shiva420
Alles klar, mit dieser Aussage kann ich arbeiten.

Dann werde ich mich mal ransetzen und gucken was so mein Ziel ist und mich noch ein wenig erkunden.

Vielen lieben Dank für eure schnelle Hilfe!

Re: Wozu ist Python überhaupt fähig?
Verfasst: Mittwoch 17. Februar 2016, 17:20
von jens
BlackJack hat geschrieben:Embedded/Mikroprozessor-Kram kann man je nach Hardware mit Assembler, C, BASIC-Dialekten vom Chiphersteller, oder Forth lösen, ein grösseres Programm für den Desktop würde man heute eher in keiner dieser Sprachen mehr angehen, auch wenn es theoretisch möglich wäre.
Da hast du grundlegend recht. Aber es gibt auch microPython:
https://github.com/micropython/micropython
Also als Fazit würde ich sagen, das man mit Python sehr viel erschlagen kann, wenn es nicht sogar die flexibelste Sprache überhaupt ist.
Re: Wozu ist Python überhaupt fähig?
Verfasst: Mittwoch 17. Februar 2016, 18:43
von BlackJack
@jens: Naja, microPython würde ich nicht wirklich als Python bezeichnen. Das ist eine Untermenge von Python und da würde ich glaube ich doch lieber eine andere Sprache verwenden, die besser auf wenig Ressourcen eingerichtet ist, als Python soweit zurechtzustutzen bis es auf das obere Ende von solchen kleinen Systemen passt.
Re: Wozu ist Python überhaupt fähig?
Verfasst: Montag 7. März 2016, 20:06
von LanX
Dav1d hat geschrieben:Python ist nicht Perl

.
Mind to elaborate, please?
Re: Wozu ist Python überhaupt fähig?
Verfasst: Dienstag 8. März 2016, 13:20
von LanX
Dav1d hat geschrieben:Shiva420 hat geschrieben:
Sollte ich etwas erstellen wollen was eher zum Verkauf gedacht ist bzw. größer/umfangreicher ist, so binde ich ebenfalls die C Reihe bzw Java mit ein bzw beschränke mich eher auf diese Sprachen.
Python ist nicht Perl

.
also ich wäre immer noch interessiert sachliche Argumente zu hören ... kommen die irgendwann?
Re: Wozu ist Python überhaupt fähig?
Verfasst: Dienstag 8. März 2016, 13:26
von Dav1d
LanX hat geschrieben:also ich wäre immer noch interessiert sachliche Argumente zu hören ... kommen die irgendwann?
Was gibts da zu argumentieren? Python ist nicht Perl.
Re: Wozu ist Python überhaupt fähig?
Verfasst: Dienstag 8. März 2016, 14:40
von BlackJack
@LanX: Du kommst zu einem Thema und fragst mit Beiträgen die nach Streit suchen klingen nach sachlichen Argumenten?
Sachliche Argumente *wofür* überhaupt? Was hättest Du denn gerne belegt? Das Python nicht Perl ist? Das sollte offensichtlich sein…

Re: Wozu ist Python überhaupt fähig?
Verfasst: Dienstag 8. März 2016, 14:51
von LanX
BlackJack hat geschrieben: Das Python nicht Perl ist? Das sollte offensichtlich sein…

Das weißt du doch dass, es in Python einfacher sei größere Applikationen zu schreiben.
wer PyPi mit CPAN vergleicht oder sich mit SysAdmins über die Versions Dependencies und Testqualität vieler Python "Module"
unterhält merkt schnell, dass es eher umgekehrt ist.
Aber hey ich fange ja an Argumente zu bringen, wo aus der Python "Community" meistens nur Dissing kommt ...
Proof me wrong!
Re: Wozu ist Python überhaupt fähig?
Verfasst: Dienstag 8. März 2016, 15:20
von jerch
@LanX:
Warum Community in Anführungszeichen? Welches Dissing? Apropos Dissing - lies einfach nochmal Deinen letzten Beitrag
Python ist nicht Perl -
Sachliche Gründe:
- andere Syntax
- verschiedene Interpreter/Implementationen
- unterschiedlicher Fokus der Sprachentwickler in puncto Lesbarkeit, syntaktischer Kompliziertheit (nicht Komplexität

)
Unsachliche Gründe:
- Perl ist schöner
- Perl ist besser
- Perl ist schneller, weiter, höher
- mit Perl kann man Golf spielen
In puncto Codequalität und Sicherheitsproblemen ist die Standardlib von CPython ganz vorne mit dabei - also nicht alles glauben, was Leute, auch in Foren so von sich geben
LanX hat geschrieben:Proof me wrong!
Ehm nein, nur weil Du das gerne hättest, muss das hier keiner tun.
Re: Wozu ist Python überhaupt fähig?
Verfasst: Dienstag 8. März 2016, 15:27
von LanX
@Jerch:
Thema verfehlt!
die Aussage war "es sei in Python einfacher größere Applikationen zu schreiben"
Die von dir aufgestellten Behauptungen stammen nicht von mir,
Ich warte immer noch auf Belege zu Dav1d's Aussage
Vielleicht lerne ich ja was neues über Python?
Oder gehört es nicht hierher über Python Fragen zu stellen?
Re: Wozu ist Python überhaupt fähig?
Verfasst: Dienstag 8. März 2016, 15:30
von jerch
@LanX:
Ah ich hab eine Leseschwäche - hilf mir bitte auf die Sprünge, wo das so behauptet wurde. Danke.
Re: Wozu ist Python überhaupt fähig?
Verfasst: Dienstag 8. März 2016, 15:36
von LanX
jerch hat geschrieben:@LanX:
Ah ich hab eine Leseschwäche - hilf mir bitte auf die Sprünge, wo das so behauptet wurde. Danke.
viewtopic.php?f=1&t=38036#p291583