-
Gesamte Inhalte
5.007 -
Benutzer seit
Inhaltstyp
Profile
Forum
Kalender
Articles
Alle erstellten Inhalte von Egoist
-
Python, die verpasste Chance?
topic antwortete auf Egoist's Egoist in: Excel Formeln und Makros, Programmier-Lehrgänge
Hallo Albert, schön, dass Dir das zusagt. Es spricht aber auch nichts dagegen, den Klassen weitere Tabellen/Listen anzufügen. Speziell bei den numerischen EC-Listen ist aber auch super einfach z.B. das Vorzeichen zu tauschen. Scheinbar ist es Deiner Aufmerksamkeit entgangen, aber die Listen in meiner numerischen Klasse wurden alle mit meinem älteren Pythons_cript erzeugt und nur in die roulib00.py mit copy & paste eingefügt. Die kryptischen Zeichen rund um die einzelnen Pleinzahlen stellen ANSI-Escapesequenzen zur Steuerung eines Terminals dar. https://de.wikipedia.org/wiki/ANSI-Escapesequenz Das täuscht, sicherlich habe ich etwas mehr Zeit aufgewendet, als üblich zur Verfügung steht, weil ich Urlaub hatte. Das ist jetzt aber vorbei und ich werde Eure Mithilfe brauchen, um den Karren zu ziehen. In Wieners Thread habe ich einen Videolink hinterlassen. Der lesende Mathematiker und Informatiker stellt die Irritationen, die durch Python bei Umsteigern generiert werden können, gelegentlich dar. Falls Dir Deine Bücher mal zu schmal werden, guckst Du vielleicht auch mal dort. Leider scheinen die Forenmacher es noch nicht geschafft zu haben, die Migrationsprobleme einzudämmen. Eine Antwort, auf meinen ausführlichen Bugreport an @Paroli habe ich auch noch nicht erhalten. Ich gehe von intensiven Arbeiten auf dieser Ebene aus. Gruss vom Ego -
Python: Links und Tipps
topic antwortete auf Egoist's wiensschlechtester in: Excel Formeln und Makros, Programmier-Lehrgänge
Heute habe ich einen alten "Bekannten" bei Youtube wiederentdeckt, weil ich nach PyQt gesucht hatte. Hier könnt Ihr Euch von einem Lehrprofi in feinstem Deutsch vorhampeln lassen, wie man komfortabel Oberflächen zusammenklicken kann. Für Neueinsteiger (nach der Installation) https://www.youtube.com/watch?v=kWiw7ZArnmc Dies Video fängt recht einfach an https://www.youtube.com/watch?v=ejfQCi2O6Ao Dieses ältere Video hab ich mir gerade angeschaut. https://www.youtube.com/watch?v=XBurh2nBR6c Hier findet sich bestimmt noch mehr wissenswertes. https://www.youtube.com/user/JoernLoviscach/search?query=Python Viel Spass mit Phyton wünscht Euch Ego -
Python, die verpasste Chance?
topic antwortete auf Egoist's Egoist in: Excel Formeln und Makros, Programmier-Lehrgänge
Hallo @sachse, da hast Du sehr gut aufgepasst und schön demonstriert, wie man aus Fehlern einen Informationsgewinn erzielen kann. -
Python, die verpasste Chance?
topic antwortete auf Egoist's Egoist in: Excel Formeln und Makros, Programmier-Lehrgänge
OK, mein erster Entwurf beinhaltete nur mehr oder weniger die Kesselaufteilung und damit die Spielregeln. Es gibt bisher 2 Klassen, eine alphanumerische und eine numerische. Beide stellen Konstante zur Verfügung, mit denen man evtl etwas reissen kann. Was gänzlich fehlt, ist der Import einer Realpermenenz, das habe ich aber in der Mache. Was ausserdem fehlt ist die Definition einer Permanenz und die eines Coups. Dazu habe ich schon klare Vorstellungen, bin aber noch offen für Input. -
Python, die verpasste Chance?
topic antwortete auf Egoist's Egoist in: Excel Formeln und Makros, Programmier-Lehrgänge
Nein, hier ist gar nichts fertig. Ich versuche nur, mich fortzubilden. Wenn ein GUI Scheisse ist, so ist es für mich doch noch besser als nix. Bitte verzeihe mir, aber ich habe schon wieder ewig nix mehr programmiert. Ich muss mich also an alles wieder herantasten. Zu meinen (autodidaktischen) Methoden zählte immer trial & error, was mich immerhin schon nach 2Tagen des Erstbesitzes eines Computers, zum ersten lauffähigen und selbst geschriebenen Computerspiel gebracht hatte. Blöderweise hatte ich da noch keinen Massenspeicher und keinen Drucker. Also musste ich das Programm vom Bildschirm abschreiben, damit es nicht verloren geht, Glücklicherweise konnte ich dann noch die Kohle (199DM) für ein Kassettenlaufwerk beschaffen, um es (entgegen aller Warnhinweise) an den laufenden Computer anzuschliessen. So wurde mein erstes Programm schliesslich gesichert... Wie sollen wir wissen, was fertig ist? -
Python, die verpasste Chance?
topic antwortete auf Egoist's Egoist in: Excel Formeln und Makros, Programmier-Lehrgänge
LOL Wiener, aber wie kommen wir hier nun weiter, ohne uns zu verzetteln? Mein Vorschlag wäre tatsächlich erst einmal tkinter ins Boot zu holen, weil es gänzlich plattformunabhängig ist. Mit der kleinen Spielerei auf der Konsole ist kein Blumentopf zu gewinnen. Gruss vom Ego -
Python, die verpasste Chance?
topic antwortete auf Egoist's Egoist in: Excel Formeln und Makros, Programmier-Lehrgänge
Wenn Du mir dahingehend helfen könntest, festzustellen wie man Vorteile zwischen 2 Dingen herausfinden kann, werde ich Dir auch antworten können. Oder flacher formuliert: Gib mir einfach einen Vorteil an, der zwischen einem Fisch und einem Fahrrad besteht. Erst dachte ich, Du wolltest hier nur den Troll geben, aber weil Du nochmal nachfragst: Ich gehe nicht davon aus, dass Dir an aktiver Programmierung überhaupt etwas liegt, falls doch, hast Du noch einen weiten Weg vor Dir. Wenn Du in einer Programmiersprache die selbe Schlampigkeit an den Tag legen würdest, wie Du es hier mit der deutschen Sprache machst, kämst Du nicht unfallfrei über die erste Zeile Programmcode hinaus. Das klingt vielleicht besonders spitz, entspricht aber den Tatsachen. Gruss vom Ego -
Python, die verpasste Chance?
topic antwortete auf Egoist's Egoist in: Excel Formeln und Makros, Programmier-Lehrgänge
Falls jemand das letzte Codefenster kopiert hatte, bitte erneut holen. Es wurde ein logischer Fehler beseitigt und es wurden Kommentare ergänzt. Natürlich ist das keine sinnvolle Anwendung, sondern demonstriert nur den Zugriff auf eine Klassenmethode. Viel Spass mit Python wünscht Ego -
Python, die verpasste Chance?
topic antwortete auf Egoist's Egoist in: Excel Formeln und Makros, Programmier-Lehrgänge
Das folgende macht noch nicht ganz, was ich wollte, aber ich hatte andere Probleme. Es ist aber ein Beispiel dafür, wie man auf unseren Librarycode zugreifen kann, indem man nur die Datei importiert. In PyCharm wird die Konsole nur ca. 5x pro Sekunde neu erzeugt. Das ruckelt wie die Hölle, obwohl der code einen halbwegs weichen Output erzeugen sollte. Ist ja alles noch pre alpha import roulib00 as roullib import time import numpy as np r = roullib.Roulette_franz # Es wird der französische Kessel aus unserer Alpha Library importiert. s = 1 # Drehrichtung Rotor links while True: # es wird ein Rechtswurf der Kugel zuerst angenommen a = -1100 # Abwurfpunkt 1100 Fächer vor der Zero, also fast 10 Rotationen e = -a # theoretisch läuft der Rotor bis dahin also insgesamt ca 19 Umdrehungen while s >= (-1): # nach dem ersten Wurf wurde die Drehrichtung 1x geändert, dann nochmal andersrum print("Kesselgucken für Arme: I") print(" I") print(" V") t = 0.0003 * np.random.randint(0, 37) # die Zeit festlegen, die gebraucht wird nach Abwurf 1 Fach zu passieren f = 1.001 # anfänglicher Reibungswert ff = 0.0001 # dynamischer Reibwert, das ist alles sehr unphysikalisch for i in range(a, e, s): # Schleife in der ein Kesselsegment nach dem anderen angezeigt wird t = t * f + ff # Kugel abbremsen ff = ff * (1 + ff/100) # Reibung verändern r.print_Segment(r, i,i+24, "\r", "") # Segment darstellen (ist eine Methode der Klasse) print (" ",i,t, end="" , flush=True) # ein paar Parameter ausgeben (Fachnummer und Fachgeschwindigkeit) time.sleep(t) # Zeit zwischen 2 Fächern abwarten if t > 0.2 + 0.1 * np.random.randint(0,37): # feststellen, ob Kugel gelandet ist print("\n",r.pl_kessel[(i+6)%37]) # falls ja, Zeilenvorschub Terminal break # Schleife verlassen s -= 2 # Drehrichtung ändern a = a * -1 # Abwurfpunkt ändern. TODO: Auf letztes Trefferfach setzen e = -a # theoretisches Schleifenende s = 1 # nach 2 Läufen Drehrichtung zurücksetzen inp = input("Weiter (enter) Stop mit 'Q': ") # Benutzer fragen, ob es weitergehen soll if inp.upper() == "Q": # nach Eingabe von "q" oder "Q" und ENTER quit() # Programm beenden -
Python, die verpasste Chance?
topic antwortete auf Egoist's Egoist in: Excel Formeln und Makros, Programmier-Lehrgänge
Meine Antwort an @roemer wurde nun schon 2h, oder so, von der Forensoftware wirkungsvoll verhindert. Ich erspare Euch die Details, die habe ich @Paroli detailiert geschickt. Selbst wenn man (bestimmte?) Zitate in reinen Text umwandelt und diese dann wieder zu posten versucht, knallt es... Da hilft nicht einmal der <code> Container... Gruss vom Ego (der den heutigen Abend leider mit Debugging der Forensoft vergeudet hat) toxic_phrase.zip -
Python, die verpasste Chance?
topic antwortete auf Egoist's Egoist in: Excel Formeln und Makros, Programmier-Lehrgänge
Jetzt hatte ich schon wieder Probleme meine Antwort abzuschicken... Es waren Zitate von roemer darin, und auch ein Link zu seinem Profil (das Ding, welches man bekommt, wenn man @Benutzername tippt). Kommentar der Website: Verboten... Edit: Selbst wenn ich das Posting aus dem Editor herauskopiere und dann als Pleintext in den WindowsEditor einfüge, dort also alle Verweise auf andere Postings in reinen Text verwandele, dann dort den Text wieder herauskopiere und hier einfüge kommt: Fehler 403 forbidden Ich mache jetz noch einen Versuch und logge aus und schliesse den Firefox... -
Python, die verpasste Chance?
topic antwortete auf Egoist's Egoist in: Excel Formeln und Makros, Programmier-Lehrgänge
Hier mal mein Entwurf für die erste Version unseres Roulettemoduls "roulib00.py" # Diese Datei bitte als roulib00.py ins aktuelle Arbeitsverzeichnis kopieren. # man kann dann in allen weiteren *.py Dateien auf die Klassenelemente zugreifen, # wenn man sein s_cript beispielsweise mit # # import roulib00 as r # # beginnt. # # r.RouldefWien.kess # # repräsentiert dann ein Tuple mit allen Plein in Kesselfolge im Uhrzeigersinn. # # usw. # # Bei Fragen, bitte fragen... import numpy as np # Definition nach Wiener Art class RouldefWien: kess = (0, 32, 15, 19, 4, 21, 2, 25, 17, 34, 6, 27, 13, 36, 11, 30, 8, 23, 10, 5, 24, 16, 33, 1, 20, 14, 31, 9, 22, 18, 29, 7, 28, 12, 35, 3, 26) rono = (0,"R","N","R","N","R","N","R","N","R","N","R","N","R","N","R","N","R","N","R","N","R","N","R","N","R","N","R","N","R","N","R","N","R","N","R","N") paip = (0,"P","I","I","P","I","P","I","I","P","P","I","I","P","I","P","P","I","P","I","P","P","I","I","P","P","I","I","P","P","I","I","P","P","I","I","P") mapa = (0,"G","K","G","K","G","K","G","K","G","K","G","K","G","K","G","K","G","K","K","G","K","G","K","G","K","G","K","G","K","G","K","G","K","G","K","G") dou = (0, 3, 2, 2, 1, 2, 1, 3, 2, 3, 1, 3, 2, 3, 1, 3, 1, 2, 1, 1, 2, 2, 3, 1, 2, 2, 3, 1, 2, 2, 3, 1, 3, 1, 3, 1, 3) col = (0, 2, 3, 1, 1, 3, 2, 1, 2, 1, 3, 3, 1, 3, 2, 3, 2, 2, 1, 2, 3, 1, 3, 1, 2, 2, 1, 3, 1, 3, 2, 1, 1, 3, 2, 3, 2) trs = (0, 31, 13, 19, 1, 19, 1, 25, 13, 31, 1, 25, 13, 31, 7, 25, 7, 19, 7, 1, 19, 13, 31, 1, 19, 13, 31, 7, 19, 13, 25, 7, 25, 7, 31, 1, 25) trp = (0, 31, 13, 19, 4, 19, 1, 25, 16, 34, 4, 25, 13, 34, 10, 28, 7, 22, 10, 4, 22, 16, 31, 1, 19, 13, 31, 7, 22, 16, 28, 7, 28, 10, 34, 1, 25) sek = ("Z","Z","Z","G","G","G","G","G","O","O","O","K","K","K","K","K","K","K","K","K","K","K","K","O","O","O","O","O","G","G","G","G","G","G","G","G","G") # Ego's numerische Listen class Roulette_franz(): pl_kessel = [0, 32, 15, 19, 4, 21, 2, 25, 17, 34, 6, 27, 13, 36, 11, 30, 8, 23, 10, 5, 24, 16, 33, 1, 20, 14, 31, 9, 22, 18, 29, 7, 28, 12, 35, 3, 26] pl_fach = [0, 23, 6, 35, 4, 19, 10, 31, 16, 27, 18, 14, 33, 12, 25, 2, 21, 8, 29, 3, 24, 5, 28, 17, 20, 7, 36, 11, 32, 30, 15, 26, 1, 22, 9, 34, 13] ec_RS = [0, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 1] ec_TH = [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] ec_UG = [0, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1] dc_col = [0, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3] dc_duz = [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3] c6_tvs = [0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6] c12_tvp = [0, 1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6, 7, 7, 7, 8, 8, 8, 9, 9, 9, 10, 10, 10, 11, 11, 11, 12, 12, 12] c9_car = [(0, 1, 2, 3), (1, 2, 4, 5), (2, 3, 5, 6), (4, 5, 7, 8), (5, 6, 8, 9), (7, 8, 10, 11), (8, 9, 11, 12), (10, 11, 13, 14), (11, 12, 14, 15), (13, 14, 16, 17), (14, 15, 17, 18), (16, 17, 19, 20), (17, 18, 20, 21), (19, 20, 22, 23), (20, 21, 23, 24), (22, 23, 25, 26), (23, 24, 26, 27), (25, 26, 28, 29), (26, 27, 29, 30), (28, 29, 31, 32), (29, 30, 32, 33), (31, 32, 34, 35), (32, 33, 35, 36)] c18_che = [(0, 1), (0, 2), (0, 3), (1, 2), (1, 4), (2, 3), (2, 5), (3, 6), (4, 5), (4, 7), (5, 6), (5, 8), (6, 9), (7, 8), (7, 10), (8, 9), (8, 11), (9, 12), (10, 11), (10, 13), (11, 12), (11, 14), (12, 15), (13, 14), (13, 16), (14, 15), (14, 17), (15, 18), (16, 17), (16, 19), (17, 18), (17, 20), (18, 21), (19, 20), (19, 22), (20, 21), (20, 23), (21, 24), (22, 23), (22, 25), (23, 24), (23, 26), (24, 27), (25, 26), (25, 28), (26, 27), (26, 29), (27, 30), (28, 29), (28, 31), (29, 30), (29, 32), (30, 33), (31, 32), (31, 34), (32, 33), (32, 35), (33, 36)] format_Farbe = ['\x1b[1;42;30m 0 \x1b[0m', '\x1b[1;41;37m 1 \x1b[0m', '\x1b[1;40;37m 2 \x1b[0m', '\x1b[1;41;37m 3 \x1b[0m', '\x1b[1;40;37m 4 \x1b[0m', '\x1b[1;41;37m 5 \x1b[0m', '\x1b[1;40;37m 6 \x1b[0m', '\x1b[1;41;37m 7 \x1b[0m', '\x1b[1;40;37m 8 \x1b[0m', '\x1b[1;41;37m 9 \x1b[0m', '\x1b[1;40;37m 10 \x1b[0m', '\x1b[1;40;37m 11 \x1b[0m', '\x1b[1;41;37m 12 \x1b[0m', '\x1b[1;40;37m 13 \x1b[0m', '\x1b[1;41;37m 14 \x1b[0m', '\x1b[1;40;37m 15 \x1b[0m', '\x1b[1;41;37m 16 \x1b[0m', '\x1b[1;40;37m 17 \x1b[0m', '\x1b[1;41;37m 18 \x1b[0m', '\x1b[1;41;37m 19 \x1b[0m', '\x1b[1;40;37m 20 \x1b[0m', '\x1b[1;41;37m 21 \x1b[0m', '\x1b[1;40;37m 22 \x1b[0m', '\x1b[1;41;37m 23 \x1b[0m', '\x1b[1;40;37m 24 \x1b[0m', '\x1b[1;41;37m 25 \x1b[0m', '\x1b[1;40;37m 26 \x1b[0m', '\x1b[1;41;37m 27 \x1b[0m', '\x1b[1;40;37m 28 \x1b[0m', '\x1b[1;40;37m 29 \x1b[0m', '\x1b[1;41;37m 30 \x1b[0m', '\x1b[1;40;37m 31 \x1b[0m', '\x1b[1;41;37m 32 \x1b[0m', '\x1b[1;40;37m 33 \x1b[0m', '\x1b[1;41;37m 34 \x1b[0m', '\x1b[1;40;37m 35 \x1b[0m', '\x1b[1;41;37m 36 \x1b[0m'] # Hier auch eine erste Funktionsdefinition innerhalb der Klasse # der Aufruf erfolgt erst in einen S_cript, welche diese Datei importiert. def print_Segment(self, start, stop, beginn = "\r", ende = ""): step = 1 if start > stop: step = -1 print(beginn, end = "", flush = True) for i in range(start, stop): x = i % 37 if x < 0: x += 37 print(self.format_Farbe[self.pl_kessel[x]], end = "") print(ende, end = "") -
Python, die verpasste Chance?
topic antwortete auf Egoist's Egoist in: Excel Formeln und Makros, Programmier-Lehrgänge
Theoretisch sollte es zur Laufzeit möglich sein, dass ein Pythons_cript; seinen eigenen Code erweitert. Ich hab es noch nicht probiert, aber ich denke das müsste klappen: Eine Klassendefinition hatte ich ja schon errechnet und auf die Konsole gedruckt. Diesen Output hätte ich auch direkt in eine xyz.py Datei schreiben können, um sie danach zu importieren. # Programmteil 1: # Hier steht der ganze Code, der die Datei xyz.py ins aktuelle Verzeichnis schreibt # danach kann es im stopp! so weiter gehen import xyz # ab hier stehen alle Objekte und Funktionen, die oben in xyz.py geschrieben wurden # sofort zur Verfügung. # # Sowas geht in keiner Sprache, die vorher kompiliert werden muss... # # Natürlich kann man so auch ein eigenes GUI zur Laufzeit generieren lassen. # -
Python, die verpasste Chance?
topic antwortete auf Egoist's Egoist in: Excel Formeln und Makros, Programmier-Lehrgänge
Hallo Albert, schade, dass Dir Python so schwierig vorkommt, die Sprache soll eigentlich zu den einfacher erlernbaren zählen Vielleicht fehlt Dir die gewohnte Vorgehensweise anderer Programmiersprachen in Python. Mir scheint es im Gegensatz zu anderen Sprachen eher so zu sein, dass Python im wesentlich nur aus Quellcode besteht, der selbst in Python geschrieben ist. Vielleicht findest Du einen Vortrag interessant, der sich zwar an fortgeschrittene Phytoniker richtet, aber viel von den Innereien offenbart. Er dauert allerdings 2h und geht sehr langsam los, ich bin auch noch nicht ganz durch https://www.youtube.com/watch?v=7lmCu8wz8ro Fazinierend finde ich zum Beispiel die Idee, das auch Funktionen Objekte sind (falls ich alles richtig verstanden habe). Die kann man dann zum Beispiel als Argument an andere Funktionen übergeben. Oder man kann vielfältige Eigenschaften einer Funktion einfach auslesen, bis hin zum Quellcode oder Anzahl der verwendeten Variablen. Gib doch bitte mal ein Beispiel. Es ist nicht so, dass ich nicht immer noch blutiger Anfänger bin, aber wenn ich helfen kann, will ich das gern versuchen. Mit tkinter hab ich noch nicht mehr gemacht, als das was ich schon gepostet hab. Das Aussehen eines GUI ist mir erstmal Mumpe, wenn es nur funktioniert. Vergleiche ich die Vielzahl an Einstellungen, die zB in .NET nötig sind, um etwas auf den Schirm zu zaubern, ist mir zumindest jetzt noch eine minimalistische Definition lieber. Ups, zu spät gesehen... Darauf möchte ich noch eingehen, obwohl es schon in den # Kommentaren stand: Wenn Du genau hinsiehst, wirst Du feststellen, dass das Programm zunächst der Kopf einer Klassendefinition ausgibt. Die vielen Tabellen, die folgen, sind mit TAB eingerückt und gehören zu der Klasse ( Roulette_franz()). Markierst Du den ganzen Output (abzüglich der Ausgaben von spider) hast Du alle Konstanten in der Klasse. Das ist purer Phytoncode, der in eine Library kopiert werden kann. Ich habe mir dazu die Datei roulib00.py in das aktuelle Arbeitsverzeichnis gespeichert, in der die Klassendefinition eingefügt wurde. Ausserdem stehen dort die Tabellen drin, die @wiensschlechtester erstellt hatte. Die Datei wird meine oder unsere erste Library wenn ihr wollt. Gruss vom Ego -
Python, die verpasste Chance?
topic antwortete auf Egoist's Egoist in: Excel Formeln und Makros, Programmier-Lehrgänge
Jetzt kommt der kleine Klassengenerator import numpy as np import time from typing import TextIO roulKessel = [0, 32, 15, 19, 4, 21, 2, 25, 17, 34, 6, 27, 13, 36, 11, 30, 8, 23, 10, 5, 24, 16, 33, 1, 20, 14, 31, 9, 22, 18, 29, 7, 28, 12, 35, 3, 26] roulRot = np.zeros(18, int) roulSchwarz = np.zeros(18, int) roulRS = np.zeros(37, int) roulUG = np.zeros(37, int) roulTH = np.zeros(37, int) pRot = "\033[1;41;37m" pGruen = "\033[1;42;30m" pSchwarz = "\033[1;40;37m" pNorm = "\033[0m" pFarbe = [pSchwarz, pGruen, pRot] pZahl = [] for x in range(0, 18): rz = roulKessel[x * 2 + 1] #Rote Zahl beginnend bei Zero im Uhrzeigersinn sz = roulKessel[x * 2 + 2] #Schwarze Zahl ist "rechts" daneben roulRot[x] = rz #alle roten werden in Kesselfolge gespeichert roulSchwarz[x] = sz for x in range(0, 37): if x in roulRot: roulRS[x] = 1 elif x in roulSchwarz: roulRS[x] = -1 else: roulRS[x] = 0 if x == 0: #prüft auf Zero, denn die ist glatt durch 2 teilbar roulUG[x] = 0 #und wäre damit auch gerade roulTH[x] = 0 #Null wäre sonst auch Tief else: if x % 2 == 0: #alle geraden sind auch glatt durch 2 teilbar roulUG[x] = -1 # -1 ist die Marke für gerade else: roulUG[x] = 1 # +1 ist die Marke für ungerade if x <= 18: roulTH[x] = 1 # +1 ist die Marke für Tief else: roulTH[x] = -1 # -1 ist die Marke für Hoch for x in range(0, 37): if x < 10: temp = pFarbe[int(roulRS[x]) + 1] + " " + str(x) + " " + pNorm else: temp = pFarbe[int(roulRS[x]) + 1] + " " + str(x) + " " + pNorm pZahl.append(temp) # Ab hier werden alle Listen in von Python lesbarer Form ausgedruckt print("class Roulette_franz():") # das öffnet eine Klassendefinition print("\tpl_kessel = ", end = "") # pl_kessel ist die Liste mit der Kesselfolge temp =[] for x in range(0,37): temp.append(int(roulKessel[x])) print(temp) print("\tpl_fach = ", end = "") # pl_fach lässt einen den Platz im Kessel wiederfinden. for x in range(0,37): temp[x] = roulKessel.index(x) print(temp) print("\tec_RS = ", end = "") # ec_RS wirft die roten als +1 und die schwarzen als -1 aus for x in range(0,37): # wer es andersherum haben will erzeugt sich daraus eine neue Liste temp[x] = roulRS[x] # ec_SR wäre dann die Bezeichnung der Wahl print(temp) # ec_SR = (-1)*ec_RS # so einfach geht das print("\tec_TH = ", end = "") # ec_TH hat die tiefen als +1 for x in range(0,37): # ec_HT kann sich jeder selbst basteln temp[x] = roulTH[x] print(temp) print("\tec_UG = ", end = "") # Ungerade (+1) und gerade Zahlen (-1) for x in range(0,37): temp[x] = roulUG[x] print(temp) print("\tdc_col = ", end = "") #Kolonne 1...3 for x in range(1,37): temp[x] = 1 + (x+2)% 3 print(temp) print("\tdc_duz = ", end = "") # Dutzend 1...3 for x in range(1,37): temp[x] = 1 + int((x - 1) / 12) print(temp) print("\tc6_tvs = ", end = "") # TVS werden einfach durchnummeriert for x in range(1,37): # 1 entspricht 1..6 temp[x] = 1 + int((x-1)/ 6) # 2 entspricht 7..12 usw print(temp) print("\tc12_tvp = ", end = "") # TVP davon gibt es 12 Stück for x in range(1,37): temp[x] = 1 + int((x-1)/ 3) print(temp) print("\tc9_car = ", end = "") # Carré hier hat jede Carré ein 4er Tuple temp2 = [(0, 1, 2, 3)] # ob das gebraucht wird ist fraglich for x in range(1,33): if x % 3 > 0: temp2.append((x, x+1, x+3, x+4)) print(temp2) print("\tc18_che = ", end = "") # alle Cheval mit jeweils einem 2er Tuple temp2 = [(0, 1), (0, 2), (0,3)] for x in range(1,34): if x % 3 > 0: temp2.append((x, x + 1)) temp2.append((x, x + 3)) print(temp2) print("\tformat_Farbe = ", end = "")# format_Farbe dient der farbigen Consolenausgabe temp3 = [] # print(format_Farbe[zahl]) zur Benutzung for x in range(0,37): temp3.append(pZahl[x]) print(temp3) # Wenn das Programm durchgelaufen ist einfach alles in die Datei einfüttern, # in der schon Wieners Tabelle liegt -
Python, die verpasste Chance?
topic antwortete auf Egoist's Egoist in: Excel Formeln und Makros, Programmier-Lehrgänge
Hallo Pythonisten, inzwischen habe ich mich redlich herumgequält, um aus @wiensschlechtester Tuple-Wüste sowas wie numerische Listen zu machen. Daher habe ich jetzt mein rudimentäres Model, mit den von der Kesselfolge abgeleiteten Chancenlisten etwas aufgebohrt. Der Output wirft einen Text auf die Konsole, den man direkt in ein Pythons_cript einfüttern kann. Es ist also ein erster, kleiner und nützlicher Erfolg zu verzeichnen. Ich poste den Code in einigen Minuten... -
Hallo novice, abgefahrene Idee. Aber das ist dann kein EC-Spiel mehr. Nur bei einem Dreifachtreffer auf allen drei EC kannst Du gewinnen. Setzt Du 3 EC gleichzeitig, hast Du die gleiche Wahrscheinlichkeit für einen Volltreffer, aber noch viele kleinere Gewinne oder Trostpreise zu erwarten. Ganz abgesehen von der Zero und dem Tronc auf Plein. Gruss vom Ego
-
Python, die verpasste Chance?
topic antwortete auf Egoist's Egoist in: Excel Formeln und Makros, Programmier-Lehrgänge
Das ist nur ein alter Trick von Lehrkörpern, wenn sie zu wenig Wissen verbergen wollen... Ich will immer gern dazulernen, daher lasse ich das erstmal unangetastet, nur will ich das gern noch in eine "__init__()" einschachteln. Schlaf gut! -
Python, die verpasste Chance?
topic antwortete auf Egoist's Egoist in: Excel Formeln und Makros, Programmier-Lehrgänge
Ja, das machen sie, nur bin ich noch kein Python-Leut, aber danke für den Hinweis! Mit Tuples habe ich noch nichts gemacht, jetzt weiss ich auch warum. Es scheint keine Methode zu geben um auf das x.Element zuzugreifen, dabei kann man aber den Index eines gesuchten Inhalts zurückbekommen. Ein Grund warum mein kleines Testprogramm so seltsamen Output generiert. Eigentlich hatte ich das von Dir abgeschrieben und nur erweitert. -
Python, die verpasste Chance?
topic antwortete auf Egoist's Egoist in: Excel Formeln und Makros, Programmier-Lehrgänge
Hier mal was richtig unfertiges, damit Ihr mich auslachen könnt: #Definition nach Wiener Art class rouldefWien(): kess= (0, 32, 15, 19, 4, 21, 2, 25, 17, 34, 6, 27, 13, 36, 11, 30, 8, 23, 10, 5, 24, 16, 33, 1, 20, 14, 31, 9, 22, 18, 29, 7, 28, 12, 35, 3, 26) rono= (0,"R","N","R","N","R","N","R","N","R","N","R","N","R","N","R","N","R","N","R","N","R","N","R","N","R","N","R","N","R","N","R","N","R","N","R","N") paip= (0,"P","I","I","P","I","P","I","I","P","P","I","I","P","I","P","P","I","P","I","P","P","I","I","P","P","I","I","P","P","I","I","P","P","I","I","P") mapa= (0,"G","K","G","K","G","K","G","K","G","K","G","K","G","K","G","K","G","K","K","G","K","G","K","G","K","G","K","G","K","G","K","G","K","G","K","G") dou = (0, 3, 2, 2, 1, 2, 1, 3, 2, 3, 1, 3, 2, 3, 1, 3, 1, 2, 1, 1, 2, 2, 3, 1, 2, 2, 3, 1, 2, 2, 3, 1, 3, 1, 3, 1, 3) col = (0, 2, 3, 1, 1, 3, 2, 1, 2, 1, 3, 3, 1, 3, 2, 3, 2, 2, 1, 2, 3, 1, 3, 1, 2, 2, 1, 3, 1, 3, 2, 1, 1, 3, 2, 3, 2) trs = (0, 31, 13, 19, 1, 19, 1, 25, 13, 31, 1, 25, 13, 31, 7, 25, 7, 19, 7, 1, 19, 13, 31, 1, 19, 13, 31, 7, 19, 13, 25, 7, 25, 7, 31, 1, 25) trp = (0, 31, 13, 19, 4, 19, 1, 25, 16, 34, 4, 25, 13, 34, 10, 28, 7, 22, 10, 4, 22, 16, 31, 1, 19, 13, 31, 7, 22, 16, 28, 7, 28, 10, 34, 1, 25) sek = ("Z","Z","Z","G","G","G","G","G","O","O","O","K","K","K","K","K","K","K","K","K","K","K","K","O","O","O","O","O","G","G","G","G","G","G","G","G","G") if __name__ == "__main__": for i in rouldefWien.kess: print(i,rouldefWien.kess.index(i), end = ",") print("\nrouldefWien.kess:",rouldefWien) while True: try: zahl = int(input("Zahl eingeben:")) zahl = zahl % 37 print("Kesselfach {} (im Uhrzeigersinn) entspricht:".format(zahl)) kesselzahl = rouldefWien.kess.index(zahl) if kesselzahl in range(0,37): kesselzahl=rouldefWien.kess.index(zahl) rn = rouldefWien.rono[kesselzahl] pi = rouldefWien.paip[kesselzahl] mp = rouldefWien.mapa[kesselzahl] do = rouldefWien.dou[kesselzahl] co = rouldefWien.col[kesselzahl] tp = rouldefWien.trp[kesselzahl] tr = rouldefWien.trs[kesselzahl] se = rouldefWien.sek[kesselzahl] print("Plein:{} RS:{} PI:{} MP:{} Doz:{} Col:{} TVS:{} TVP:{} KS:{}".format(kesselzahl,rn,pi,mp,do,co,tr,tp,se)) except ValueError: print("Bitte nur ganze Zahlen eingeben!") Das Progrämmchen hat noch kein Ende, also muss es abgewürgt werden. Viel Spass beim Fehler suchen wünscht Ego -
Python, die verpasste Chance?
topic antwortete auf Egoist's Egoist in: Excel Formeln und Makros, Programmier-Lehrgänge
Nana Wiener, was sind wir heute kratzbürstig? Eine Library soll für alle Arten der Benutzung sinnvoll sein, daher werden sowohl alphanumerische, als auch numerische Tabellen enthalten sein. Ich habe mir erlaubt Deine Tabellen zu verwenden, um die erste Klasse daraus zu stricken. Ich stecke aber noch beim Testen fest, weil Dein Indexzugriff bei mir Verwirrung stiftet. -
Python, die verpasste Chance?
topic antwortete auf Egoist's Egoist in: Excel Formeln und Makros, Programmier-Lehrgänge
Sorry, aber ich habe keinen Schimmer, was ich bestimmen soll. Ich geh mal drüber schlafen... -
Python, die verpasste Chance?
topic antwortete auf Egoist's Egoist in: Excel Formeln und Makros, Programmier-Lehrgänge
gelöscht -
Zeigt her eure OC-Screenshots aus dem alltäglichen Wahnsinn!
topic antwortete auf Egoist's Nebutzermane in: Online-Casinos
Wenn das flächendeckend ist, hat das Forum echt grosse Probleme. Sowas kann bis zum Absterben führen, ich hoffe es kommt nicht so weit...- 997 Antworten
-
- screenshots
- online casinos
-
(und %d Weitere)
Getaggt mit:
-
Crosspost: