Pythonfoo: Difference between revisions

From Chaosdorf Wiki
(→‎Stickman: Links)
No edit summary
 
(129 intermediate revisions by 34 users not shown)
Line 1: Line 1:
{{Event
|Title=Pythonfoo
|Description=Dinge in Python
|Type=Meet-Up
|Date=every Thursday
|ExceptDates=2024-12-26
|Start=18:00
|Host=dodo,hwmrocker,ytvwld
|Location=[[Hackcenter]] und [[VirtualSpace#Hackcenter]] (auf Nachfrage)
|isRelevant=Yes
}}
{{Project
{{Project
|name=Pythonfoo
|name=Pythonfoo
|description=wöchentliches Treffen + Projekte
|description=wöchentliches Treffen + Projekte
|project category=Meet-Up
|image=Pythonfoo.png
|image=Pythonfoo.png
|source=https://github.com/chaosdorf/pythonfoo{{!}}github
|source=https://github.com/pythonfoo{{!}}github
|status=stable
}}
}}
{{Event
|  Title = Pythonfoo
|  Description = Dinge in Python
|  Type = Meet-Up
|  Date = every thursday
|  Start = 18:00
}}
[[File:Matrixfoo.png|right|thumb|Matrixfoo - Quelle: dodo]]


Es passieren Dinge in Python <del>und keiner weiß was</del>.<br>
[[File:Matrixfoo.png|right|thumb|Matrixfoo - Quelle: [[User:dodo|dodo]] ]]
Jeden Donnerstagabend ab ca. 18 Uhr.


Wir versuchen uns mit mehr oder weniger nützlichen Projekten Python und die Programmierung an sich gegenseitig bei zu bringen.
Es passieren Dinge in Python <del>und keiner weiß was</del>. Jeden Donnerstagabend ab ca. 18 Uhr.
Anfänger in der Programmierung und/oder Python sind deshalb jederzeit Willkommen ;).


Ein tragbarer Computer mit Python 2.6, 2.7 oder Python 3.0 ist empfehlenswert,
Wir versuchen uns mit mehr oder weniger nützlichen Projekten Python und die Programmierung an sich gegenseitig beizubringen.
zur Not stehen auch Gastrechner zur Verfügung.<br>
Leute, die Programmierung und/oder Python lernen wollen, sind deshalb jederzeit willkommen ;). Zur Erfüllung dieses Zieles gibt es Aufgaben, Projekte und in unregelmäßigen Abständen Vorträge über Projekte oder die Eigenheiten dieser Sprache.


== Python lernen ==


== Installation ==
Python ist eine leicht erlernbare Programmiersprache, da sie zum Beispiel auf manche komplizierte Eigenheiten anderer Sprachen verzichtet.


Die aktuell installierte Python-Version bekommt man heraus, indem man eine Shell öffnet und "python" eingibt.<br>
Wir haben dazu einen kleinen Kurs entwickelt und die Themen in Level eingeteilt um dem ganzen eine Struktur zu geben und um an geeigneten Stellen Pausen für Aufgaben machen zu können. Unsere Beispiele, Aufgaben und Anleitungstexte finden sich auf [https://github.com/pythonfoo/pythonfooLite GitHub].
Verlassen kann man Python mit dem Kommando "exit()".<br>
Sollte eine Meldung erscheinen wie
Der Befehl »python« wurde nicht gefunden
ist Python nicht installiert.


=== Standardmäßig vorhanden ===
[https://chaosdorf.de/2015/06/pythonfoo-wie-geht-es-weiter/ Unsere Beweggründe für das alles] haben wir auch mal aufgeschrieben.
'''ACHTUNG''' nachfolgende Liste ist UNVOLLSTÄNDIG und basiert auf selbst getesteten und erarbeiteten Ergebnissen.<br>
Python ist standardmäßig auf folgenden Distributionen vorhanden:
* Debian
* Ubuntu
* Fedora (nicht bestätigt!)


!ALLE ANGABEN OHNE [http://de.wikipedia.org/wiki/Gew%C3%A4hr GEWÄHR]!
== Projekte ==


=== ARCH ===
Für Menschen, die schon mehr Erfahrung haben (und gerade kein eigenes Projekt, an dem sie arbeiten wollen), gibt es immer wieder mal [https://github.com/pythonfoo/challenges challenges]. Aktuell ist dies unser [https://chaosdorf.de/2024/05/pythonfoo-textadventure/ Textadventure].
Python ist unter Arch nicht standardmäßig installiert, kann aber wie folgt mit root-rechten nachinstalliert werden:
pacman -Sy python
Weitere Infos: https://wiki.archlinux.org/index.php/Python


== Projekte ==
== Generell ==
Aktuelle "Projekte"


=== Stickman ===
Ein tragbarer Computer mit Python (>=3.6) ist empfehlenswert.
Dodo arbeitet momentan am "Stickman Killer". Der "Stickman Killer" ist ein kleines Spiel, in dem der Spieler mit einen Dolch den Stickman verfolgt. Trifft der Dolch den Stickman werden Blutspritzer simuliert. Das Spiel benutzt PySFML. Zu dem Programm benötigt man auch noch ein ganzes Grafikpaket. Ausser dem Grafikfoo wird auch noch ein Programmpacket mitgeliefert. <br>
Es gibt verschiedene Versionen: <br>
* MO: Originalversion <br>
* M1: Basisprogramm <br>
* M2: M1 mit neuen Grafiken <br>
* M3: M1 mi neuen Grafiken und einen italienischen Klempner, falls die letzte Super Mario Session nicht gut verlief. <br>
* M4: M1 mit Joystick Unterstützung <br>
* OTP: M1 mit dem zusätzlichen Feature das ein [http://de.wikipedia.org/wiki/One-Time-Pad One Time Pad] erstellt wird <br>
* joytest: Ein auf M1 basierendes Programm mit und für Joysticks <br>


=== Pong ===
== Installation ==
[[Pythonfoo/Installation| Installation von Python]]


Im Moment spielen wir ein wenig mit SFML um zum Beispiel ein Pong 2.0 mit Python
== Projekte ==
programmieren zu können. Aber das soll Neulinge nicht abschrecken: <br>
* [[Pythonfoo/Projekte|Projekte]]
Jeder hat mal klein angefangen!
* [https://github.com/pythonfoo/ Pythonfoo-Projekte auf GitHub]
* [https://github.com/pythonfoo/pythonfooLite Python-Kurs für Anfänger*innen auf GitHub]
* [https://github.com/pythonfoo/fantasy_forge Fantasy Forge, unsers Textadventure-Baukasten]


Für die Planung des Projektes und  allgemeines Brainstorming wurde ein [http://piratenpad.de/ro/r.J1vN3Im0yJOATvMf pad] eingerichtet.<br>
== CrashKurs Python ==
Dort wird dann Pong 2.0 geplant.
zusätzlich zu dem Hauptkurs, finden sich hier noch ein paar weitere Links:


Der aktuelle Sourcecode zu Pong und weiteren Übungsprojekten findet sich in unserem git-hub Repository [https://github.com/chaosdorf/pythonfoo pythonfoo.git]
* [https://github.com/pythonfoo/pythonfoo/tree/master/beginnerscorner/crashcourse-0 crashcourse-0 auf GitHub]
* [http://pythonforbiologists.com/ Python for Biologists] - Helping biologists metamorphose into programmers
* [https://github.com/rbreu/python-course Kurs für Anfänger und Sprachwechsler]
* [https://github.com/pythonfoo/pythonfoo/tree/master/beginnerscorner/crashcourse-2 Crashkurs der von Oerb um einen Teil der Objektorientierten Programmierung (OOP) erweitert wurde]


== Sonstiges ==
== Sonstiges ==


=== interesting ===
=== interesting ===
Shell öffnen und folgendes eingeben:
Shell öffnen und folgendes eingeben (ab Python 2.1.2):
python
import this
 
Shell öffnen und folgendes eingeben (ab Python 2.7):
  python
  python
  import antigravity
  import antigravity
antigravity


=== Frameworks ===
=== Texteditoren / IDEs ===
SFML - Simple and Fast Multimedia Library: [[PySFML]]
 
{| class="wikitable sortable"
|-
! name+url !! license !! lang !! used by
|-
| [http://thonny.org/ thonny] || MIT || Python > 3.4 || {{U|dodo}}
|-
|[https://code.visualstudio.com/ VS Code]||MIT||multi||{{U|hwmrocker}}
|-
| [http://www.jetbrains.com/pycharm/ PyCharm] || commercial + community ed. || Python || {{U|bison}}
|-
|[https://zed.dev/ Zed] || GPLv3 || multi || {{U|ytvwld}}
|-
| [https://github.com/mbrochh/vim-as-a-python-ide Vim as a Python IDE] || free || multi || {{U|r4mp}}
|-
| [http://www.geany.org/ Geany] || GPLv2 || multi || {{U|bison}}, Mechtilde, Michael
|-
| [http://www.sublimetext.com/ Sublime Text 2] || commercial || multi || {{U|marudor}}, {{U|r4mp}}
|-
| [http://wingware.com/ Wing IDE] || commercial || Python || -
|-
| [http://eric-ide.python-projects.org/ Eric] || GPLv3 || Python || -
|-
| [https://codewith.mu/ Mu] || GPLv3 || Python || -
|-
| [https://codelobster.com/ Codelobster] || commercial || multi || -
|}
 
More at: [http://wiki.python.org/moin/IntegratedDevelopmentEnvironments IntegratedDevelopmentEnvironments]
 
===Frameworks===
'''Multimedia''':<br />
*SFML - Simple and Fast Multimedia Library: [[PySFML]]
 
'''Web''':<br />
*[http://flask.pocoo.org/ Flask]
*[http://bottlepy.org/docs/dev/ BottlePy]
*[http://www.cherrypy.org/ CherryPy]
*[https://www.djangoproject.com/ Django]
*[http://werkzeug.pocoo.org/ Werkzeug]
 
'''Gaming''':<br />
*[http://www.pygame.org/news.html PyGame]
 
'''SQL''':<br />
*sqlalchemy -
 
===HowTos ===
*Einen kleinen Einstieg in die Programmiersprache gibt es unter: [http://de.wikibooks.org/wiki/Python_unter_Linux Wikibooks]
*Zu empfehlen ist auch das [http://openbook.galileocomputing.de/python/ openbook] von Galileo Computing Allerdings kann man da schlecht suchen, da empfiehlt sich zB google Suche mit der site:  Klausel:  site:<nowiki>https://openbook.rheinwerk-verlag.de/python</nowiki> "call by value"  - hier gibt es wirklich nur Treffer aus dem Buch
*Geht über einen Sprachkurs hinaus auch auf einige nützliche Module ein :  [https://automatetheboringstuff.com Automatetheboringstuff.com]
*Auch nicht schlecht: http://www.tutorialspoint.com/python/python_basic_syntax.htm
*Seems nice ;) http://www.dotnetperls.com/python
*Awesome quick reference (mit Übungsaufgaben) [http://anandology.com/python-practice-book/index.html Python Practice Book]
*Wie man format benutzt: [https://pyformat.info/ pyformat]
*[https://pythontutor.com pythontutor.com] visualisiert den Ablauf von Programmen ganz gut in Verbindung mit der Darstellung Variablen und Listenverweisen und ihren SIchtbarkeiten


=== HowTos ===
===Links===
Einen kleinen Einstieg in die Programmiersprache gibt es hier: http://de.wikibooks.org/wiki/Python_unter_Linux
*[http://www.python.org/dev/peps/pep-0008/ Recommendations for code formatting in Python (in English)]
*[http://wiki.python-forum.de/PEP%208%20%28%C3%9Cbersetzung%29 Empfehlung für die Art der Code Formatierung in Python (in Deutsch)]
*[http://doda.co/7-python-libraries-you-should-know-about doda.co - 7 schicke Libs für Python]
*[https://pypi.org/ PyPI - the Python Package Index]

Latest revision as of 17:39, 23 October 2025

Pythonfoo
Dinge in Python
Art Meet-Up
Datum every Thursday
außer an 2024-12-26
Start 18:00
Host dodo, hwmrocker, ytvwld
Ort Hackcenter und VirtualSpace#Hackcenter (auf Nachfrage) Property "Has location" (as page type) with input value "Hackcenter]] und VirtualSpace#Hackcenter (auf Nachfrage)" contains invalid characters or is incomplete and therefore can cause unexpected results during a query or annotation process.
Relevant? Yes
Pythonfoo stable
Pythonfoo.png
wöchentliches Treffen + Projekte
Quelltext github


Matrixfoo - Quelle: dodo

Es passieren Dinge in Python und keiner weiß was. Jeden Donnerstagabend ab ca. 18 Uhr.

Wir versuchen uns mit mehr oder weniger nützlichen Projekten Python und die Programmierung an sich gegenseitig beizubringen. Leute, die Programmierung und/oder Python lernen wollen, sind deshalb jederzeit willkommen ;). Zur Erfüllung dieses Zieles gibt es Aufgaben, Projekte und in unregelmäßigen Abständen Vorträge über Projekte oder die Eigenheiten dieser Sprache.

Python lernen[edit | edit source]

Python ist eine leicht erlernbare Programmiersprache, da sie zum Beispiel auf manche komplizierte Eigenheiten anderer Sprachen verzichtet.

Wir haben dazu einen kleinen Kurs entwickelt und die Themen in Level eingeteilt um dem ganzen eine Struktur zu geben und um an geeigneten Stellen Pausen für Aufgaben machen zu können. Unsere Beispiele, Aufgaben und Anleitungstexte finden sich auf GitHub.

Unsere Beweggründe für das alles haben wir auch mal aufgeschrieben.

Projekte[edit | edit source]

Für Menschen, die schon mehr Erfahrung haben (und gerade kein eigenes Projekt, an dem sie arbeiten wollen), gibt es immer wieder mal challenges. Aktuell ist dies unser Textadventure.

Generell[edit | edit source]

Ein tragbarer Computer mit Python (>=3.6) ist empfehlenswert.

Installation[edit | edit source]

Installation von Python

Projekte[edit | edit source]

CrashKurs Python[edit | edit source]

zusätzlich zu dem Hauptkurs, finden sich hier noch ein paar weitere Links:

Sonstiges[edit | edit source]

interesting[edit | edit source]

Shell öffnen und folgendes eingeben (ab Python 2.1.2):

python
import this

Shell öffnen und folgendes eingeben (ab Python 2.7):

python
import antigravity

Texteditoren / IDEs[edit | edit source]

name+url license lang used by
thonny MIT Python > 3.4 dodo
VS Code MIT multi hwmrocker
PyCharm commercial + community ed. Python bison
Zed GPLv3 multi ytvwld
Vim as a Python IDE free multi r4mp
Geany GPLv2 multi bison, Mechtilde, Michael
Sublime Text 2 commercial multi marudor, r4mp
Wing IDE commercial Python -
Eric GPLv3 Python -
Mu GPLv3 Python -
Codelobster commercial multi -

More at: IntegratedDevelopmentEnvironments

Frameworks[edit | edit source]

Multimedia:

  • SFML - Simple and Fast Multimedia Library: PySFML

Web:

Gaming:

SQL:

  • sqlalchemy -

HowTos[edit | edit source]

Links[edit | edit source]