Difference between revisions of "Pythonfoo"

From Chaosdorf Wiki
Jump to navigation Jump to search
Line 51: Line 51:
  
 
== Projekte ==
 
== Projekte ==
Aktuelle "Projekte"
 
  
=== New Agora ===
+
[[Pythonfoo/Projekte|Projekte]]
Ein Projekt initiiert von {{U|Frosch}}, um per Mail im Web zu surfen.
 
Hauptsächlich gedacht für Unterdrückungsstaaten, Länder in denen man Repressalien befürchten muss oder Gebiete mit sehr schlechter Netzanbindung.
 
 
 
* [https://github.com/chaosdorf/pythonfoo/tree/master/projekts/newagora GitHub]
 
* [http://piratenpad.de/hU3OW9nNjl Piraten Pad]
 
 
 
=== PyCraft ===
 
{{U|dodo}} erweitert gerade einen (auf [https://github.com/fogleman/Minecraft.git GitHub] gefundenen) Minecraft-Klon. Es wird die Python-Bibliothek pyglet benutzt.
 
* Ein [https://github.com/bison--/Minecraft.git GitHubFork]
 
** Level laden und speichern
 
 
 
=== Pystorms ===
 
Bei Pystorms handelt es sich um ein futurales Event; sobald Ergebnisse vorliegen werden sie hier vermerkt.
 
 
 
Im Zweifelsfall: [[Pystorms]]
 
 
 
=== PizzaProxyPrinter ===
 
Drucklibrary für den PizzaProxyPrinter, die im Verlauf eines Besuchs beim Raumzeitlabor in Mannheim entstanden ist. Das bisherige im Einsatz befindliche Modul im PizzaProxy benutzte LaTeX um auf einem TSP-100 Thermodrucker die Bestellquittung mit QR-Code zu drucken. Die neue Library benutzt statt dessen die Image-Module zum Erstellen eines Bildes mit dem Druckinhalt und schickt dieses via "lp" an den Drucker. Tricky dabei ist die Formatierung auf beiden Seiten aufeinander abzustimmen. [https://github.com/chaosdorf/pizzaproxyprinter PizzaProxyPrinter auf Github]
 
 
 
=== Stickman ===
 
[[File:joytestPythonfoo.png|right|thumb|joytest.py beim Laufen - Quelle: [[User:dodo|dodo]] ]]
 
 
 
{{U|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 Programmpaket mitgeliefert.
 
 
 
Es gibt verschiedene Versionen:
 
 
 
* MO: Originalversion
 
* M1: Basisprogramm
 
* M2: M1 mit neuen Grafiken
 
* M3: M1 mi neuen Grafiken und einen italienischen Klempner, falls die letzte Super Mario Session nicht gut verlief.
 
* M4: M1 mit Joystick Unterstützung
 
* OTP: M1 mit dem zusätzlichen Feature, dass [https://wiki.chaosdorf.de/Pythonfoo#Zufall Zufallszahlen] für ein [http://de.wikipedia.org/wiki/One-Time-Pad One Time Pad] erstellt werden
 
* joytest: Ein auf M1 basierendes Programm mit und für Joysticks
 
 
 
=== Zufall? ===
 
Leider handelt es sich bei der Zufallserstellung in OTP nicht um wirklichen Zufall, dodo arbeitet schon daran ein Programm nur zur Erstellung von Zufallszahlen zu basteln.
 
 
 
Allerdings ist es schwiering durch Mathematik (also Ordnung) Zufall (also [http://de.wikipedia.org/wiki/Chaos Chaos]) zu erhalten.
 
 
 
Die Lösung sind Funktionen in der Mathematik, die nur in eine Richtung funktionieren (ähnlich wie beim [http://de.wikipedia.org/wiki/RSA-Kryptosystem RSA-Verfahren]).
 
 
 
Eine solche Funktion ist zum Beispiel die [http://de.wikipedia.org/wiki/Quersumme Quersumme].
 
 
 
Man kann auch Eingaben des Benutzers verwenden (Mausschubserei!).
 
 
 
=== Pong ===
 
Im Moment spielen wir ein wenig mit SFML, um zum Beispiel ein Pong 2.0 mit Python programmieren zu können. Aber das soll Neulinge nicht abschrecken: Jeder hat mal klein angefangen!
 
 
 
Für die Planung des Projektes und allgemeines Brainstorming wurde ein [http://piratenpad.de/ro/r.J1vN3Im0yJOATvMf Pad] eingerichtet.
 
 
 
Dort wird dann Pong 2.0 geplant. Pong 2.0 hat im Grunde das Ziel, die Objektorientierung unter Python zu verstehen bzw. verständlich zu machen.
 
 
 
Der aktuelle Sourcecode zu Pong 1.0 und weiteren Übungsprojekten findet sich in unserem GitHub-Repository [https://github.com/chaosdorf/pythonfoo pythonfoo.git]
 
  
 
== Sonstiges ==
 
== Sonstiges ==

Revision as of 18:08, 26 April 2013

Pythonfoo unknown
Pythonfoo.png
wöchentliches Treffen + Projekte
Quelltext github


Pythonfoo
Dinge in Python
Art Meet-Up
Datum every Thursday
Start 18:00
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. Anfänger in der Programmierung und/oder Python sind deshalb jederzeit willkommen ;). Zur Erfüllung dieses Zieles gibt es neuerdings in unregelmässigen Abständen Vorträge über Projekte oder die Eigenheiten dieser Sprache.

Ein tragbarer Computer mit Python 2.6, 2.7 oder Python 3.x ist empfehlenswert; zur Not stehen auch Gastrechner zur Verfügung.

Installation

Die aktuell installierte Python-Version bekommt man heraus, indem man eine Shell öffnet und "python" eingibt.

Verlassen kann man Python mit dem Kommando exit().

Sollte eine Meldung erscheinen wie

Der Befehl »python« wurde nicht gefunden

ist Python nicht installiert.

Standardmäßig vorhanden

ACHTUNG nachfolgende Liste ist UNVOLLSTÄNDIG und basiert auf selbst getesteten und erarbeiteten Ergebnissen.

Python ist standardmäßig auf folgenden Distributionen vorhanden:

  • Debian
  • Ubuntu
  • Fedora (nicht bestätigt!)


!ALLE ANGABEN OHNE GEWÄHR!

Arch Linux

Python ist unter Arch nicht standardmäßig installiert, kann aber wie folgt mit root-Rechten nachinstalliert werden:

pacman -Sy python

Aktuelle Version 3.3.x. Weitere Infos: https://wiki.archlinux.org/index.php/Python

Projekte

Projekte

Sonstiges

interesting

Shell öffnen und folgendes eingeben:

python
import antigravity
antigravity

IDEs

name+url license lang used by
Vim as a Python IDE free multi -
Geany GPLv2 multi bison, Mechtilde, Michael
Sublime Text 2 commercial multi -
PyCharm commercial Python bison
Wing IDE commercial Python -
Eric GPLv3 Python -

More at: IntegratedDevelopmentEnvironments

Frameworks

Multimedia:

  • SFML - Simple and Fast Multimedia Library: PySFML

Web:

HowTos

Einen kleinen Einstieg in die Programmiersprache gibt es hier: Wikibooks

Zu empfehlen ist auch das openbook von Galileo Computing

Auch nicht schlecht: http://www.tutorialspoint.com/python/python_basic_syntax.htm

Ein kleiner Crashkurs von bison steht auf GitHub zur Verfügung.

... der von Oerb um einen Teil Objektorientierte Programmierung (OOP) mit Python ausgebaut wurde (noch nicht vollständig): GitHub

Links