Beiträge von MarkusH
-
-
Wir fordern die Abschaffung der 10-H Regelung in Bayern.
-
-
Mal wieder neues von den Jodtabletten, Aachen ist bereits gut versorgt und nun werden weiter entfernte Landkreise mit den Tabeletten zentral versorgt. Und werden im Ernstfall an die Bevölkerung verteilt.
-
Und wieder andere Verkaufen und machen den Reibach und zahlen keine Steuern...
-
Und auch Wichtig, nicht jedem Tip befolgen, der irgendwo steht.
Da gibt es bei Facebook Tips wie man ohne 10km laufen die Eier ausbrühten
kann. Man legt das Handy auf den drehenden Teller der Mikrowelle.
Den da kommt nur Schrott dabei raus, HANDY-Schrott!!Und auch ohne Pokemon, niemals das Handy in die Mikrowelle legen!
-
Der Postillon hat keine Falschmeldung am 1. April veröffentlicht, den wörtlich heisst es da:
ZitatFalschmeldungen? Nicht mit uns! Wie in jedem Jahr seit seiner Gründung (1845) boykottiert der Postillon den überaus schändlichen 1. April. Deutschlands größte Tages- und Nachtzeitung der Welt setzt damit ein Zeichen gegen die albernen Lügen und Aprilscherze, die in vielen weniger seriösen Medien an diesem Tag verbreitet werden.
-
Habe am Sonntag mal wieder Zeit gehabt mich mit Simutrans zu befassen. Ich habe es auf einer Raspberry Pi 2 B mit dem Betriebssystem Raspbian gespielt, die CPU ist mit dem 900 MHz mit die schnelleste aber das macht sich nur beim Zoomen bemerkbar und das der Zeitzähler nicht so schnell vergeht. Das beim Spielspass macht das keinen Unterschied.
Ich habe die Strategie ausprobiert, zuerst die Personenbeförderung auszubauen, also mit Strassenbahnen und Bussen, leider kam dabei nicht viel Geld in die Kasse, erst als ich die Kohle zu einem Kraftwerk befördert habe kam richtig Geld in die Kasse.
Habe heute in den sozialen Netzwerken gesehen das es eine neue Version zum Download gibt, Simutrans 120.1.1
Installer for Windows
MS Windows user should use the Online-Installer: http://sourceforge.net/project…line-install.exe/download
Those versions do support IPv6 on windows. As a result it will not run on any windows OS below XP.If you want to download manually, you will need an executable and a pak set.
Executables
http://sourceforge.net/project…/files/simutrans/120-1-1/PakSets - graphic packages
Pak64 120.0.1
pak64 Basics http://sourceforge.net/project…ak64-120-0-1.zip/download
64pak food chain http://sourceforge.net/project…n-food-112-2.zip/downloadPak64.german 112.3 (new)
Version 112.3 http://forum.simutrans.com/ind…35eba0a75963d&topic=14226 -
Web-Framework oder Webtoolkits gibt es wie Sand am Meer, aber ich möchte über eines mit dem Namen "Django " schreiben. Das ist laut Webseite ein "high-level Python Web framework", das die schnelle Entwicklung und sauber, pragmatischen Entwurf fördert.
Erstmal auf der Zunge zergehen lassen. Web ist klar, Python ist die Programmiersprache, Framework ein Grundgerüst und high-level wörtlich übersetzt: auf höchster Ebene. Jetzt klingt es so, nur noch um die Logik und Ausgabe kümmern und fertig. Und fast so ist es.
Erste Schritte in die Webentwicklung mit Django
Auf der Django Webseite gibt es ein gutes Einsteiger Tutorial in englischer Sprache. Das habe ich durchgearbeitet und war sehr hilfreich. Zuerst wird ein Projekt angelegt, dann eine App erstellt. Die App bekommt ein Datenmodel, in den Tutorial wird das beispielhalt mit einer Umfrage gezeigt, in dem Datenmodel werden die Antwortmöglichkeiten einer Frage zugeordnet.
-
Published 04 Januar 2015
Updated: 22 Oktober 2015
By MarkusHWer Simulationen mag oder Eisenbahnstrecken bauen möchte, sollte sich Simutrans unbedingt anschauen.
Ich haben mich auch vom Spiel Simutrans längere Zeit faszinieren lassen. Das ist eine wirklich gut gemachtes Wirtschaftssimulation für Transport und Verkehr und wird kostenlos zum Download angeobten, der Quellcode wird frei angeboten und die Weiterentwicklung ist gewünscht. Zum Spielbeginn sollten zuerst die Kraftwerke mit Kohle versorgen, das bringt Geld für den weiteren Ausbau ein, aber richtig viel Geld gibt es beim Personentransport mit dem Flugzeug. Interessiert? Das Spiel läuft auf Linux, Win und Mac.Leider gibt es im Moment für Debian 8 "Jessie" keine aktuelle Version, nur die Version von Debian 7, die Version 112. Um mit der aktuellen Version spielen zu können habe ich mir Simutrans Homepage die Linux x64 SDL
zip Datei sowie den Grafiksatz PAK128.german heruntergeladen. Zuerst die Spieledatei Datei entpackt in ein Verzeichnis nach Wunsch, und dann der Grafiksatz PAK128.german in das gleiche Verzeichnis entpackt. Die
simutrans und get_pak.sh ausführbar gemacht. Die fehlenden Bibliotheken nachinstalliert, in meinem Fall war esBei Youtube gibt es mit dem Suchbegriff Simutrans viele Videos zu sehen:
https://www.youtube.com/results?search_query=simutransA. Kuller hat noch einen Tip gegeben: gleich am Anfang sich auf die Passagierbeförderung konzentrieren und diese Zufrieden beförderen (das heißt, moderne Verkehrsmittel und keine überfüllten Haltestellen) da kommt schnell viel Geld in die Kasse.
Das Schöne an Simutrans, jeder kann seine Ideen verwirklichen.
Wer möchte kann zum Beispiel auch auf einer Deutschlandkarte spielen: http://maps.simutrans.com/europe.html
-
Published: Fr 04 September 2015
Updated: Mi 30 September 2015
By MarkusHAuf dieser Seite möchte ich eine Liste für deutsche Python Webseiten bereitstellen:
Python Webseiten
- Das deutsche Python-Forum
- Das Pythonbuch bei Wikibooks, enthält viele Scripte zum Testen und Probieren.
- Python ist eine leicht zu lernende, objektorientierte Programmiersprache.
- Plattformunabhängig: Windows, Unix und Mac
- Interpretierte Sprache (Script-Sprache)
Python Codeschnipsel- Wissenschaftliche Grafiken unter Python
- Operatorüberladung, Anpassung des grundlegenden Objektverhaltens,
Funktionsobjekte, eigene Collections und einiges mehr wird bei
Python mit Hilfe der Methoden mit den doppelten Unterstrichen erledigt.
Eine mit Python programmierte Animation zum Valentinstag.
Python Tutorials
- Willkommen zum Python-Kurs-Tutorial, einem Kurs, der sich zum Selbststudium eignet.
Tutorial für das Erstellen von einfachen Textmenüs- Viele Anfänger stehen vor dem Problem, zur Steuerung ihrer typischen
kleinen einsteigerfreundlichen Tools - wie Adressverwaltungen, Telefonbücher,
TODO- Listen, usw. - ein Menüsystem zu implementieren.
- Diese Python-Tutorial ist eine sehr gute Einführung in die Welt von Python.
Und ist mit 18 Kapitel auch sehr umfangreich. Ist die Übersetzung des
offiziellen Python-Tutorials der Version 3.3. und steht unter der
Apache License 2.0.
- Die Programmiersprache Python auf Wikipedia
- mache bei diesem Link eine Ausnahme, den sonst sind die Beiträge auf
dieser Seite in deutscher Sprache, aber der Beitrag erklärt PyGame
wirklich gut und ist mit vielen Bildern und Quellcode sehr
übersichtlich geschrieben.
Schlangengerangel für Kinder, Programmieren lernen mit Python"Schlangengerangel für Kinder, Programmieren lernen mit Python" ist die
deutsche Übersetzung des Buches "Snake Wrangling For Kids" von Jason R. Briggs.Es ist ein eBook für Kinder ab 8, die eine Programmiersprache lernen
wollen. Es behandelt anhand von Python 3 die grundlegenden Konzepte.Das Buch liegt in 3 verschiedenen Formen vor (eins für Mac, eins für
Linux und eins für Windows).The Hitchhiker’s Guide to Python!
Welcome to The Hitchhiker’s Guide to Python.
-
Published: 04 Januar 2015
Updated: 19. September 2015
By MarkusHDebian ist einer der bekanntesten und grössten GNU/Linux Betriebssystemen. Und demnächst wird die nächste Version 8 "Jessie" veröffentlicht. Sie wird die Nachfolge von Debian 7 "Wheezy". Die aktuelle Version ist Debian 7.8 vom 10. Januar 2015. Und Debian 7.0 wurde ursprünglich am 4. Mai 2013 freigegeben.
Also ich habe bei meinem alten Rechner das neue Debian hochgerüstet, sprich die Paketliste auf Jessie geändert und ein dist-upgrade durchgeführt. Zuvor die grafische Oberfläche beendet, damit ich mir sicherer war das wenn die Bildschrimansteuerung aktualisiert wird der Computer nicht abstürzt. Ach ja, es ist wichtig zuvor die Daten zu sichern, falls beim Update etwas schief läuft und die Festplatte formatiert werden muss. Bei eine Linux Neuinstallation teile ich die Festplatte in zwei Partitionen, 20GB - 40GB für das Betriebssystem und Programme und den Rest als home Verzeichnis, sprich für die Daten.
Die größte Änderung von Debian 8 "Jessie" ist die Umstellung des Systemhochlaufes, mit dem Dienst systemd werden die Geräte, bzw. Dienste möglichst parallel gestartet und so wird der Hochlauf verkürzt, früher wurden mit init die Dienste hintereinander gestartet. Und diese Umstellung hat bei mir Problemlos funktioniert, leider habe ich den Hochlauf zuvor nicht gemessen und kann nicht sagen wieviel es genau
gebracht hat.Von der Pythonseite aus betrachtet, wurde PyQt5 für Python 2 (python-pyqt5) und 3 (python3-pyqt5) neu hinzugenommen. Python 2.7 ist der Standardaufruf.
Die Debian 8 Installer können von der Entwickler-Ecke heruntergeladen werden.
Und für das Lesen und Schreiben auf SDXC Speicherkarten gibt es das Paket exfat-fuse.
-
Ich habe diesen Text von Mihnea Dobrescu-Balaur übersetzt, um zu zeigen wie andere über die Programmiersprache Python denken.
Der Autor war damit einverstanden und hat mir seine Einwilligung am 22.11.2013 gegeben, mit Bitte um den Verweis zu seiner Seite.www.mihneadb.net/post/python-the-best-first-programming-language/
von Mihnea Dobrescu-Balaur.
Ich begann die Programmierung in der Schule zu lernen, und habe mit C angefangen. Es war ein bisschen kompliziert, sich mehr auf die Speicherverwaltung als auf Algorithmen zu kümmern, aber ich wusste nicht was ich jetzt weiß und ich war wirklich daran interessiert, also ging ich diesen Weg.
Danach wurde mir in der Universität im Einsteigerkurs auch C gelehrt. Bis dahin kannte ich andere Programmiersprachen, insbesondere Python, und sah, wie Menschen ohne Vorkenntnisse mit C kämpften begann ich mich zu fragen, ob Python eine bessere erste Sprache wäre. Beim Betreuen einiger Programmierungskurse und Durchführen einiger Python-Workshops, bin ich überzeugt, dass Python die beste erste Programmiersprache ist.
Lassen Sie mich Ihnen sagen warum das so ist.Hier ist ein Vorgeschmack darauf, wie der Pythoncode aussieht:
def contains(numbers, value):
for n in numbers:
if n == value:
return True
return Falsenums = [1, 2, 3, 7, 13, -2, 4, 8, 9]
result = contains(nums, 7)
print result # TrueIch zeigte den Leuten ohne Programmiererfahrung diese Code-Snippet und sie haben kein Probleme mit dem Lesen und Verstehen des Verhalten. Ich hörte ihr Feedback und reflektierte es und kam vier wichtigen Aspekte, die ich denke das Python die erste Programmiersprache ist, die jemand lernen sollte. Es ist eine hohe, dynamische (und dynamisch typisierte) Programmiersprache, mit einen Ausdruckskraft, die die Lesbarkeit des Codes verbessert.
[Blockierte Grafik: http://localhost:8000/python-logo-inkscape.svg]
Python ist eine Hochsprache. Dies hat nicht unbedingt viel sagen, da C auch als eine Hochsprache bezeichnet wird.Formulieren wir es als "höhere Sprache als C". Dies bedeutet, dass Python eine Abstraktionsebene bietet, in der sie sich sich auf Algorithmen konzentrieren können und was Ihr Programm zu tun hat, versteckt sie die Tatsache, dass der Computer eine dumme Maschine ist, die nur binär versteht. Beispiele hierfür sind viel - Sie müssen nicht den Speicher manuell verwalten, Python sagt, wenn Sie außerhalb der Grenzen auf eine Liste zugreifen, Strings haben eingebaute Unterstützung und die Standard-Bibliothek wird bereitgestellt mit gut dokumentierten Funktionen meist mit dem was du tun will. Außerdem haben Sie Zugriff auf alle Datenstrukturen, die Sie es für das Studium des Programmierens benötigen.
Die Definition einer dynamischen Programmiersprache ist, wie Wikipedia erwähnt, ein bisschen unscharf, aber der Hauptaspekt, die Python zur einener freundliche Sprache macht,
ist die runtime. Dank den haben wir dynamische Typisierung, einfach Selbstbeobachtung und Reflexion, alle gebündelt und sind in dem Python-Interpreter zugänglich.
Dies fördert Newcomer mit Live-Code experimentieren und ermöglicht eine engere Feedback-Schleife bei der Arbeit an Projekten. Keine Ahnung, was die Funktion macht?
Versuchen Sie es in der Interpreter! Fragen Sie sich, welche Funktionen ein Modul zur Verfügung stellt?
Nutze die Funktion dir!
All diese Sachen machen das Experimentieren einfacher und senkt die Zeit für die Erstellung von Prototypen.Wie einfach es ist eine Idee auszudrücken und wie knapp Sie es tun können:
Für mich hängt die Ausdruckskraft einer Programmiersprache von zwei Dingen zusammen.
Ich fühle, dass Python es Ihnen ermöglicht, eine Menge Sachen in ein paar Zeilen Code zu erledigen,
ohne die Lesbarkeit (The Zen of Python) darunter leidet.
Es sind die kleinen Dinge, wie die Möglichkeit zu schreiben3 < x < 10
, die Ihnen ermöglicht, kurze, schöne Code zu schreiben.
Liste Comprehensions sind ein weiteres Beispiel des mächtige Syntax:numbers = [1, 2, 3, 4, 5, 6, 7, 8]
evens = [x for x in numbers if x % 2 == 0]Die Syntax ist ähnlich wie in der Mathematik verwendetet Set-builder Notation, die es zugleich leistungsfähig und lesbar macht.
Last but not least, ist die Lesbarkeit eine wesentliche Stärke von Python.
Ich denke, der wichtigste Grund dafür ist, die Vertiefung als Teil der Syntax.
Python verwendet keine geschweiften Klammern, um Codeblöcke begrenzen,
es reichen Einrückungen. Für Anfänger bedeutet dies, sie müssen gut gegliederte Code
für ihre Programmarbeit schreiben, und später, bedeutet dies, dass der Code das Lesen anderer Menschen einfacher wird.Außerdem verwendet Worte Python, in denen andere Sprachen Symbole und Zahlen verwenden würden(and , or , True , False etc.), womit es näher an den gesprochenen algorithmischen Code (Pseudocode) ist.
Versuchen Sie dieses. Lesen Sie die folgenden Code-Schnipsel laut.
Welcher ist leichter zum Verstehen?
Anmerkung: Das Beispiel ist natürlich im Englischen besser zu verstehen,
aber für and = und, or = oder, true = wahr, false = falsch einsetzen gibt es den Sinn wieder.is_even = (a % 2 == 0) ? 1 : 0;
Python
is_even = True if a % 2 == 0 else FalseNatürlich konnten wir nur den Vergleich als Ausdruck benutzt habe, aber der Punkt war,
den ternären Konstrukt zu zeigen.Da die Syntax dem Pseudocode ähnelt können Anfänger eine Arbeitsimplementierung eines Algorithmus sie ziemlich leicht begreifen.
Dann dank Python Lesbarkeit und dynamischen Natur können sie frei experimentieren, um sicherzustellen, dass sie den jeweiligen Algorithmus verstehen.Für alle genannten Gründen (und mehr), denke ich, Python ist die Programmiersprache für den Unterricht.
Um diesen Anspruch auf die Probe zustellen hat ROSEdu Py4School ein Programm gestartet,
in dem Hochschullehrer und Studenten Python, als Alternative zu C zu lernen. Lehrer und Studenten lieben es.Zusammenfassend ist Python eine Einsteigerfreundliche, aber mächtige Sprache.
Die Anfänger konzentrieren sich auf Algorithmen, lassen die systemnahen Implementierungsdetails außer Acht,
dank einem ausdrucksstarken und gut lesbaren Syntax. Ich denke, das macht Python zu der besten ersten Programmiersprache.am 18.11.2013 geschrieben.
-
Wetterstation von Tinkerforge
Die Heimautomation wird immer Preisgünstiger, und durch einfache Minicomputer wie den Raspberry Pi, die im Handel nur 40 Euro kostet, ist ein interessanter Faktor. Ich konnte mich nicht diesem Thema entziehen und habe mir einen Bausatz einer Wetterstation und den Minicomputer gekauft. Auf dem Minicomputer läuft Raspbian und ist installiert auf der SD-Karte mit der Hilfe vom NOOBS Setup. Und die Installation hat nur paar Minuten gedauert.
Die Tinkerforge Wetterstation ist fertig aufgebaut
Die Wetterstation von tinkerforge ist fertig zusammengebaut und an die Raspberry Pi angeschlossen und darauf ein Python Programm zu Anzeige am Display und es ist fhem installiert. Das neueste Debian Paket von der fhem Webseite heruntergeladen und mit sudo dpkg -i fhem-5.6.deb und dann ein sudo apt-get -f install installiert werden.
Das Python Programm meldet die Werte an fhem, das ein bekannte Software in der Heimautomatisierung ist.
Und so kann ich die Werte der Wetterstation im Browser oder am Handy anschauen.
Die Tinkerforge Wetterstation ist fertig aufgebaut
Innenansicht
Die Änderungen in der fhem.cfg:
Die Werte werden wie im diesem Beispiel über Telnet an den fhem Server geschrieben.Mein Quelltext kann angeschaut und verwendet werden.
Ich möchte auch der Seite blog.smartnoob.de danken, die mir wertvolle Tips gab.
Tinkerforge hat seit 2015 einen eigenen Prozessor, den sogenannten Red Brick, der Anstelle der Raspberry Pi verwendet werden kann.
Bei meiner Wetterstation ist mir aufgefallen das die Temperatur um 1 bis 2°C zu hoch ist, das kommt daher da der Sensor mit auf dem Luftdruck Modul sitzt und in erster Linie die Temperatur vom Chip misst um den Luftdruckwert zu kompensieren. Wer es genauer haben möchte kann sich ein separates Temperatur Bricklet kaufen und über ein Master Brick anschliessen oder Tausch mit einem anderen Bricklet. Bohrlöcher für andere Bricklet sind an Gehäuse vorhanden. -
Das Zahlenratespiel für die Kommandozeile.
für ein kleines Spiel zwischendurch. Für alle, die gerne kleine textbasierte (ohne GUI) Spielchen spielten, dürften Interesse an meinem Zahlenratespielchen haben.
Finde den Astronaut im Koordinatensystem, bei dem das Raumschiff während eines Asteroidensturm beschädigt wurde, und alle Systeme ausgefallen sind! Beeile dich, den nur 20 Runden ist Zeit! Die drei Koordinaten sind im Bereich von 0 bis 100. Für einen lang anhalteten Spielspass gibt es eine Bestenliste, die nach Zeit und Runden sortiert ist und die Daten in einer lokalen SQlite3 Datenbank speichert. Das Spiel war mein erstes Programm mit einer Datenbank.
Das Programm verzichtet auf ein Grafisches User Interface (GUI).
Stattdessen wurde ein Menü nach dem Tutorial von Lysander verwendet. Und wurde von BrokenSoul1979 erstellt. Das Programm hat mittlerweile schon drei Sterne auf Github gekommen.Es läuft auf MacOS, Windows und Linux, und überall dort wo sich Python installieren läßt!
Start
Das Spiel benötigt Python 3
Und der Quellcode kann auf github.com/MarkusHackspacher/Lost_in_space heruntergeladen werden.
Start mit: python start.py
-
Wie ein einfaches Banner erstellt wird, ist meisten klar, ein Grafikprogramm öffen, Datei Neu auswählen und die gewünschte Größe, dann den Hintergrund und einen Text eintragen. Etwas komplizierter, aber ähnlich ist es wenn das Banner animiert werden soll, da werden paar Bilder im gleichen Format erstellt und dann in ein GIF Bild zusammen gefügt. Zum Beispiel, das Banner soll 468 Pixel breit und 80 Pixel hoch werden, die Einzelbilder müssen dann auch die gleiche Größe haben.
Auf dem ersten Bild ist z.B. ein großer Text zu sehen, das bekommt den Dateinamen frame_0001.gif, das zweite Bild hat zwei kleine Textzeilen und wird als frame_0002.gif gespeicht, das dritte heißt frame_0003.gif und ein Logo ist darauf zusehen.
Und mit dem Linuxbefehl "gifsicle --delay=10 --loop frame*.gif > ani.gif" wird daraus das animierte Bild erstellt, bzw. herstellen, für die nach animiertes Bild herstellen gesucht haben, dass aber in diesem Zusammenhang eigentlich falsch ist, da das Bild nur aus den vorhandenen Daten heraus generiert wird.Aber hier möchte ich aufzeigen wie ein animiertes GIF Bild mit einen Text erstellt wird.
Und selbstverständlich habe ich das mit Python gemacht, nach dieser Anleitung:
http://www.mbeckler.org/inkscape/svgani/.
In diesem wird das Bild mit einem Farbverlauf animiert und ist der Quellcode für das Beispiel zu Download
(Python 2.7) bereitgestellt.
Dabei habe ich eine skalierbare Vektorgrafik (engl. Scalable Vector Graphics) kurz SVG erstellt
mit meinem Text, diese Editiert und einen Ablauf geschrieben, diese Daten dann als einzelne Bilder
ausgegeben und als animiertes GIF gewandelt.Also mit Inkscape eine .svg Grafik erstellt mit dem Text, die x und y Werte im Texteditor umbenannt,
unter dem Link ist der Text der SVG Datei.XML- <?xml version="1.0" encoding="UTF-8" standalone="no"?>
- <!-- Created with Inkscape (http://www.inkscape.org/) -->
- <svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
- xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
- width="468px"
- height="60px">
- <defs />
- <sodipodi:namedview
- id="base"
- pagecolor="#ffffff"
- bordercolor="#000000"
- borderopacity="1.0"/>
- <text
- style="font-size:30px;"
- x="x_position"
- y="y_position"
- sodipodi:linespacing="110%"><tspan
- style="font-weight:bold;fill:#a02c2c">markush.cwsurf.de</tspan><tspan
- style="fill:#a02c2c">Python programmieren</tspan></text>
- <rect x="10" y="55" width="458" height="2" stroke="black"/>
- </svg>
Die Datei sieht in Inkscape nicht besonders ansprechend aus,
da sie Positionsangaben mit x_position und y_position deklariert sind und somit setzt
Inkscape die Werte auf Null in die rechte obere Ecke:Banner bearbeitet mit Inkscape
In die Setting Datei den Dateinamen der .svg Datei eingetragen und mit meinen Animationablauf gefüllt:
CodeDie Animation startet mit dem Wert 50 und wird in 14 Schritten auf
140 erhöht, der Index Wert in in die XY Position geschrieben
und der Text wandet dabei nach oben links aus dem Bild heraus.
Die zweite Phase startet rechts ausserhalb vom Bild und die Textposition
wandert nach links und durch die cosinus Funktion wird eine leichte
auf/ab Bewegung erzeugt.Und wie beschrieben das Pythonscript starten, dann werden die viele frame_xxxx.gif Daten erzeugt, und mit
in eine animierte gif Datei wandeln. Wer diesen Befehl nicht zur
Verfügung hat, kann das Bild auch mit dem Grafikprogramm Gimp erstellen. -
Habe ein Cup Tippspiel Programm geschreiben. Der Name der Python Software heißt pyCupBettingund den Quelltextkönnt ihr bei Github anschauen und herunterladen. Als Lizenz habe ich GPL gewählt. Die Daten werden in einer lokalen Dakenbank gespeichert, ich nutze dabei das ORM von SQLAlchemy da die Zugriffe auf die Datenbank über die Variable erfolgt. Und nicht mit SQL Befehlen nach den Daten suchen muss. Als Textmenü verwende ich classymenu.py aus den Tutorial von Lysander.
Die Datei habe ich abgeändert damit ich eine Auswahlliste anzeigen kann. Das Programm kann in Deutsch, Englisch und seit neuesten, dank Sascha Mester in Esperanto gestartet werden.Der Sinn des Tools ist die Vorrundenergebnise in der Gruppenphase und den Sieger eines Fußballweltmeisterschaftstunieres zu Tippen, natürlich geht auch jedes andere Tunier sofern eine Gruppenphase gespielt wird. Die Grundfunktionen wären alle Spiele auf eine Seite auszudrucken und dann diese den Tipper zum Ausfüllen zu Verfügung stellen, natürlich auch die Tipp- und Ergebnisseingabe. Dazu kommt die Ergebnissrechnung, für den richtigen Siegen gibt es einen Punkt, für den richtigen Torabstand zwei Punkte und für das exakte richtige Ergebniss drei Punkte. Und den Ausdruck des Ergebniss, das Ganze habe ich im ersten Schritt ohne GUI realisiert, die Eingaben sollen in der Kommandozeile gemacht werden. Auf der technischen Seite, ich habe einen Datenbankmanager mit Objektrelationale Abbildungverwendet und bin damit echt super zufrieden. Und damit habe ich mir echt viel Entwicklungszeit gespart und kann
SQLAlchamy nur weiter empfehlen.Version 0.1
pyCupBetting hat seit dem 27. März die erste Versionsnummer 0.1 bekommen, das heißt das Programm funktioniert soweit, die Bedienung ist aber noch nicht so ausgereift, bzw. könnte Benutzerfreundlicher sein. Zum Beispiel, wenn noch keine Teamnamen eingegeben sind, braucht das Wettbewerbsmenü nicht sichtbar sein. Und wenn ein Eintrag gelöscht wurde, muss die Menüebene kurz verlassen werden, damit sich die Daten aktualisieren.
Start
Das Programm benötigt Python3.x und sqlalchemy. Installieren Sie zunächst Python und danach kann sqlalchemy installiert werden:
easy_install SQLAlchemy oder
pip SQLAlchemy
den Quelltext
herunterladen und mit python pycupbetting.py starten. Bei Fehlermeldung oder Wünschen einfach einen Kommentar hinterlassen, ich werde antworten.Als Erweiterung wäre möglich:
Eine komfortable Eingabe über eine GUI, z.B. alle Mannschaften einer Gruppe können mit Drag und Drop zu den Partien zusammen gestellt werden.
Eine grafische Fiederkurve der Positionen der Tipper, auch zum Ausdrucken.
Eine flexible Gestalltung damit das Programm für z.B. Championsleage und EM verwendet werden kann.
Datenbank
Die Datenbank hätte die folgende Struktur:
team: ID, Name, Gruppe
games: ID, team_A, team_B, result_A, result_B, start_date
User, ID, Name, email
Bets: ID, user, game, bet_A, bet_B
Die Daten werden mit SQLAlchemy Object Relational Mapper verwaltet.
Webseite (zeigt die README Datei): markushackspacher.github.io/pycupbetting/
-
Das Programm eine Alternative zur Stift&Papier-Methode beim Notieren der Ergebnisse z.B. bei Computer Fußballspiele.
Es speichert die Mitspieler und Ergebnisse in einer SQLite Datendank auf der Festplatte mit dem Namen "datenbank.sqlite".
Es können neue Mitspieler hinzugefügt werden, der Name kann geändert und gelöscht werden.Und selbst verständlich können neue Partien hinzugefügt, geändert und gelöscht werden. Und auch das Datum der Partie oder des Spiels kann eingetragen oder geplant werden.
Download bei Github
Das Programm starten:
./pyfootballmngr.pyNeu ab 5.12.2012: Das Datum wird mit dem Qt4.CalendarWidget dargestellt.
Neu ab 24.8.2013: das Programm ist jetzt auch in deutsch, die Sprache wird automatisch ausgewählt, kann aber auch im Startparameter übergeben werden z.B.: ./pyfootballmngr.py de oder ./pyfootballmngr.py en. Version
1.0Ab 15. Februar: Startbar mit Python 2.7 oder 3, Qt4 und Qt5
UnterstützungDas Programm benötigt Python 2.7 oder 3.x und pyQt4 bzw. pyQt5 für Python.
Bei Linux brauchst du auf deinen Rechner diese Programme, Python selbst, pyQt4 bzw. pyQt5 und optimal die Versionsverwaltung Git.
Diese Installierst du mit diesem Befehl:sudo apt-get install python-qt4 git
Dann kopiert du den Quellcode des Programms auf deinem Rechner, entweder das zip File von den Projekt herunterladen oder eleganter mit der Verwaltung herunterladen:
git clone https://github.com/MarkusHackspacher/pyfootballmngr.git
Dieser Befehl ladet den Quelltext herunter und kopiert ihn in das pyfootballmngr Verzeichnis.In das Verzeichnis wechseln:
cd pyfootballmngrDas Programm starten:
./pyfootballmngr.py -
Auf meiner Seite möchte ich euch die Programmiersprache Python anhand von Programmbeispielen vorstellen. Der Umfang der Sprache ist sehr groß und läßt sich durch Module sehr gut erweitern. Sie kann als Scriptsprache eingesetzt werden oder mit einen Grafischen Toolkit wie Tkinter oder Qt als benutzerfreundliche Programm
Wikipedia sagt dazu:
Python
ist eine universelle höhere Programmiersprache. Ihre Entwurfsphilosophie betont Programmlesbarkeit. Ihr Gebrauch von Einrückung zur Blockbegrenzung ist ungewöhnlich unter populären Programmiersprachen.
Wenn Python auf dem Rechner installiert ist, kann mit
HalloWelt.py:
print ("Hallo Welt")
in einer Datei mit Endung .py, Hallo Welt auf den Bildschirm ausgegeben werden. Bei Fragen oder Wünsche könnt ihr unter dem entsprechenden Beitrag einen Kommentar hinterlassen.
Dazu gibt es auch viel deutsche Onlinehilfe:
Einfacher und übersichtlich Code, einfaches arbeiten mit Dateien, wie z.B. Excellisten auswerten.
Die Software und IDE ist frei und dazu noch Plattformunabhänig! -
Beim Lesen von dieser Seite Zugriff vom WLAN Handy auf den Computer! ist mir die Idee zu einer GUI für den kleinem Webserver gekommen. Aber nicht nur praktisch für Dateien über das WLAN auf ein Smartphone zu laden, sondern auch echt hilfreich wenn ein Computer noch nicht richtig ins Netzwerk eingebunden ist bzw. noch keinen Zugriff darauf hat. Da kann der Webserver schnell weiterhelfen um paar Dateien auf den Computer zu laden.
Mit diesem Python Programm wird ein HTTP Server bedient. Und die Bedienung ist echt einfach, nur das Verzeichnis auswählen wo der Zugriff erfolen soll und den Server mit "Startserver" starten.
BedienungWenn der Server gestartet ist kann über den Browser http://127.0.0.1:8080 oder die Rechneradresse + :8080 auf aus angewählte Verzeichnis zugegriffen werden. Zu sehen sind dann im Browser die Dateien in diesem Verzeichnis, befindet sich eine index.html Datei wird diese geöffnet. Praktisch um mit einem Handy mit WLAN auf den Rechner zuzugreifen. Das Programm ist mit Python programmiert und läuft unter allen anderen Betriebssystemen, auf denen Python läuft. Für die Oberfläche habe ich Tk verwendet, die sind schon bei Python mitdabei. Wer einen Webserver suchet, der dazu noch ein Uploadbutton bietet, wird bei Droopy fündig.
Download und AusführenDas Programm benötig Python
Und dann den passenden Quelltext für Python 2 oder Python 3 in eine Datei \"webserver.pyw\" kopieren und die Datei starten. Der Trick bei dem Programm ist, der SimpleHTTPServer wird in einem extra Thread unabhängig vom Hauptthread gestartet und wird dann mit dem Ende vom Hauptprogramm beendet.
Der Quelltext für Python 2.7 und 3.x: gist.github.com
Download als zip.Gestartet wird es mit
Wenn das schwarze Fenster stört das automatisch mit erscheint, die Dateiendung in .pyw und das Programm wird ohne zusätzliches Fenster gestartet.
Den Code könnt ihr frei verwenden und ändern!
Anwendungen
Bei dem Openstreemapeditor ID ist in Javascript programmiert und benötigt einen Server, den Server kann mit python -m SimpleHTTPServer oder mit meiner GUI gestartet werden.