Was nach Grundlagen von Python?

6 Antworten

Vom Beitragsersteller als hilfreich ausgezeichnet
Ich habe den 12 Stunden Python Full Course von Bro Code angeschaut und gelernt.

Zunächst ein Rat: Meide Crashkurse besser oder erhebe sie zumindest nicht als einzige Leitquelle. Es sei denn, du hast nur ein oberflächliches Interesse daran, programmieren zu lernen.

Man kann damit nix machen außer vielleicht einen kleinen Taschenrechner.

Python eignet sich unter anderem für allerlei Automatisierungsaufgaben (sei es auf Softwareebene oder auch für Hardwareautomatisierung - Stichwort: Smart Home), Datenanalysen (das können auch Bilder sein), z.T. für Spieleanwendungen, Discord Bots und auch Desktopprogramme mit grafischer Oberfläche lassen sich realisieren.

Ich habe mal gehört das es bei Python so module gibt, aber weiß nicht viel darüber. Könnte wer mir das erklären und welches Modul das beste ist?

Module in Python stellen bereits vorimplementierte Funktionen zur Verfügung. Zum Beispiel zur Bearbeitung von Strings, zum Parsen von Daten (JSON, XML, ...), für mathematische Funktionen, usw..

Nach einem besten Modul zu suchen, wäre hierbei allerdings sinnlos, da es doch auf den Anwendungsfall ankommt, was man gerade braucht. Wenn du bspw. die Wurzel aus einer Zahl berechnen möchtest, wäre das math-Modul für dich nützlich, da es eine sqrt-Funktion beinhaltet. Das io-Modul wäre hierbei wiederum eher unbrauchbar, obwohl es doch trotzdem ganz klar seine Daseinsberechtigung für andere Anwendungsfälle hat.

Oder soll ich einfach anfangen die nächste Programmiersprache zulernen und wenn ja welche?

Ich würde hierfür keinen Grund sehen. Beschäftige dich doch erst einmal weiter mit Python und werde sicher im Umgang mit dieser Sprache. Trotz deines 12h-Marathons und gerade auch aufgrund deiner bisherigen Aussagen / Fragen bezweifle ich sehr, dass nun problemlos Anwendungen mit Python entwickeln könntest, selbst wenn sie nur den Einsatz von Grundlagenkenntnissen fordern. Und das Ziel, Spiele zu entwickeln, erreichst du mit Python ebenso.

Beginne erst mit praktische Übungen und kleinen Projekten.

Ein paar Vorschläge:

Wichtig wäre vor allem, dass du selbst auf Lösungsansätze zu solchen Aufgaben kommst.

Weitere Vorschläge für fortgeschrittenere Projekte:

  • Erstelle ein textuelles Escape-Room-Spiel. Der Nutzer soll also via Optionen, die ihm in der Konsole präsentiert werden, in einem Haus herumnavigieren und dort diverse Objekte aufsammeln und an anderer Stelle benutzen können.
  • Ein Adressbuch, in dem man Kontakte anlegen, bearbeiten, suchen und wieder löschen kann.
  • Eine Chatanwendung, bei der der Nutzer seinen Chatverlauf auch in einem bestimmten Format (XML o.ä.) oder einer Datenbank speichern kann. Innerhalb der Chatnachrichten wäre es toll, einfache Formatierungsoptionen (fett, kursiv) zu haben.
  • Ein Tic-Tac-Toe-Spiel mit drei Modi: Spieler gegen Spieler, Spieler gegen Computer, Computer gegen Computer. Wenn der Computer spielt, verwendet er ein Minimax-Suchverfahren, um seinen Zug zu wählen.
  • Schiffe versenken, bei dem zwei Spieler via Netzwerk kommunizieren. Alternativ sind auch diverse Kartenspiele wie Rommée oder Mau-Mau denkbar.
  • Ein Programm, welches eine Karte (Länderansicht) präsentiert. Auf jeder Fläche eines Landes werden Daten zum Durchschnittswetter (Temperatur, Bewölkung, Niederschlag) des aktuellen Tages angezeigt.
  • Eine kleine Shopanwendung mit Django oder Flask.

Bezüglich der Entwicklung von Spielen mit Python wären Processing.py, PyGame oder die Ursina Engine passend für einen Start. Für komplexere Spiele (gerade in Richtung 3D) solltest du dir entweder Panda3D anschauen oder Godot (eine Engine, die eine an Python angelehnte, proprietäre Skriptsprache namens GDScript verwendet).


TijerL 
Beitragsersteller
 24.08.2021, 13:54

Danke für die Antwort! Ich setzte mich mal mit Ursina auseinander und versuche paar kleine Spiele zumache. Du meintest ich soll Crashkursen meiden. Könntest du mir was anderes Vorschlagen? Ich möchte eigentlich nur das Programmieren können und paar nützliche Dinge. Ich wollte auch mal eine App programmieren, die den Taskbar transparent macht. Auch die Apps mittig stellt und die Icons von Apps rundig statt viereckig. Denkst du das würde mit Python gehen und wenn ja welches Modul würdest du dafür empfehlen?

0
regex9  24.08.2021, 14:22
@TijerL

Ich habe hier schon einmal mehrere Quellen zusammengetragen.

Für ein OS die Darstellungsformen zu ändern, ist mit Python nicht so einfach. Ob es da schon eine Bibliothek gibt (auch eine C-Implementation wäre denkbar, da Python über eine Schnittstelle auch C-Bibliotheken nutzen kann), müsstest du selbst einmal recherchieren. Andernfalls solltest du einmal schauen, welche Möglichkeiten dir die System APIs des jeweiligen OS (für Windows bspw. die Windows API) zur Verfügung stellen und inwiefern es eine Schnittstelle zu Python gibt.

0
Ich habe den 12 Stunden Python Full Course von Bro Code angeschaut und gelernt. ... 
Man kann damit nix machen außer vielleicht einen kleinen Taschenrechner. Ich habe mal gehört das es bei Python so module gibt, aber weiß nicht viel darüber

Was wieder mal eindrücklich zeigt, was von den laienhaften "Programmierkursen" auf Youtube zu halten ist. Wenn sowas in 12 Stunden nicht klar geworden ist, war es verschwendete Zeit.

Du brauchst Struktur und eine sinnvolle Abfolge von Theorie und Praxis. Das bekommst du, indem du ein Lehrbuch aktiv durcharbeitest (mein üblicher Tipp für ein brauchbares und trotzdem günstiges Buch), oder eventuell einen Kurs der entsprechend aufgebaut ist (siehe Udemy, Coursera & Co.).

Noch besser ist es, wenn deine Übungen von jemandem auch beurteilt und verbessert werden, aber das kannst du für den Anfang kompensieren.

Ich kann empfehlen das man sich einen Raspberry Pi Einplatinencomputer anschafft. Darauf kann man verschiedene Betriebssysteme laufenlassen (meistens sind das Linux-Distros) und dort auch in Python programmieren. Diese Sprache wird dort genutzt um z.B. die Ein- und Ausgänge abzufragen und anzusteuern. Damit kann man dann unzählige Projekte aufbauen und es wird damit nie langweilig.

Hier ein Raspberry Pi Starterset: https://www.reichelt.de/das-reichelt-raspberry-pi-4-b-4-gb-all-in-bundle-rpi-4b-4gb-allin-p263086.html?PROVID=2788&gclid=EAIaIQobChMI74v9srbd5AIV0KSaCh3N3gwfEAkYAiABEgI4lfD_BwE&&r=1 Das einzigste was man noch zusätzlich braucht ist eine normale Tastatur und Maus. Über HDMI (Kabel ist dabei) wird er an einen Fernseher/Monitor angeschlossen.

Hier der Einstieg in den Raspberry Pi: https://tutorials-raspberrypi.de/ Dort gibt es auch Beispielprojekte und Python Beispielcodes. Vorkenntnisse sind nicht erforderlich.

P.S. Das Amazon Alexa Framework und das Google Assistant Framework gibt es auch kostenlos für den Raspberry Pi. Das lässt sich in Python einbinden. Das dürfte auch interessant sein.

Wenn du denkst, dass du nach einem "12 Stunden Full Kurs" eine Sprache beherrschst, hast dich auch getäuscht. Wenn du davon ausgehst dass du mit Python nicht mehr als einen Taschenrechner machen kannst, hast die Sprache bei Weitem nicht verstanden

Woher ich das weiß:Studium / Ausbildung – Ausgebildeter Fachinformatiker

TijerL 
Beitragsersteller
 22.08.2021, 20:23

Ich weiß das man viel mehr machen kann. z. B. Files löschen, öffnen, Discord Bot. Aber ich weiß nicht welche Module ich brauche. Denn einfach so mit Python geht das nicht. Er hat Tkinter für so ein TicTacToe Spiel genutzt. Aber Tkinter hat mehrere Sachen. Muss ich tkinter lernen oder ist das wie Python Grundlagen?

0
regex9  22.08.2021, 21:54
@TijerL
Aber ich weiß nicht welche Module ich brauche. Denn einfach so mit Python geht das nicht.

Du solltest die Python-Dokumentation zu Rate ziehen. Darüber lässt sich dann auch herausfinden, dass das Öffnen von Dateien mit der open-Funktion des io-Moduls realisierbar ist und das Löschen von Dateien mit der remove-Funktion aus dem os-Modul. Beide Module sind Bestandteile der Standardbibliothek. Es geht also einfach nur mit Python.

Bezüglich Discord Bots findest du von Discord selbst eine Online-Dokumentation.

Muss ich tkinter lernen oder ist das wie Python Grundlagen?

Wenn du mit tkinter arbeiten möchtest, musst du dich natürlich auch mit diesem Modul auseinandersetzen.

Da tkinter eine tk-Implementation für Python ist, wäre die tk-Dokumentation auch eine geeignete Anlaufstelle. Explizite Ressourcen listet die Python-Dokumentation. Der Verweis auf effbot (eine in der Hinsicht damalig bekanntere Quelle) ist in der Auflistung leider nicht mehr gültig, doch die WayBackMachine hilft: effbot.

Auf RealPython findest du im Übrigen ebenfalls zahlreiche Tutorials, Übungen, usw.. Hier ist bspw. ein Einstiegsartikel zu tkinter.

Alternativ zu tkinter gibt es noch modernere, externe Lösungen. Da wäre bspw. kivy oder das Qt-Binding PyQt5. Bei Gelegenheit kannst du dich ja einmal mit einer dieser Optionen noch etwas genauer beschäftigen.

0

Lehren python mit der App mimo zumindest die basics

Woher ich das weiß:eigene Erfahrung