Closed horstjens closed 11 years ago
espeak mit espeak > /dev/null 2>&1 aufrufen. Das unterdrueckt die Fehlermeldungen. Solange espeak funktioniert, muss man erstmal nicht auf den ueblichen Linux-Sound-Driver/Server Wirrwarr achtgeben. ;-) yipyip
danke @yipyip! @horstjens gesehen?
btw. @horstjens: schlage vor, dass ich das spiel mal "für mich" soweit fertig mach, dass bei mir alles passt und ein separates repo mit ner fork anlegen (vielleicht gleich bei dir) für weiterentwicklung/anpassung für das python game book bzw. auch problemlösungen, die mich jetzt nicht direkt betreffen (wie z.b. die espeak-fehlermeldungen). dann bleiben in diesem repo meine "kursleistungen" quasi erhalten. (; was meinst du?
@kerstin: Was du auch jetzt schon beherzigen solltest: 1) 4 Leerzeichen, nicht 8, der Editor (Geany?) macht das ja automatisch... 2) erst das eigentliche "Hangman Problem" loesen, danach kommen espeak, verschiednen OS, etc. Nicht alles auf einmal. 3) Statt stringtogether gibt es join(). http://www.diveintopython.net/native_data_types/joining_lists.html 4) Alles in Funktionen packen!
Hoffe, nix fuer ungut ;-) Dirk
@yipyip Danke für das Feedback! Zu Deinen Punkten:
http://google-styleguide.googlecode.com/svn/trunk/pyguide.html#Python_Style_Rules Das sind Regeln, die den Umgang mit Quellcode vereinfachen, keine Gesetze, die alles noch komplizierter machen. ;-) Dirk
@yipyip Den Style Guide werd ich mir bookmarken, danke!
Und ich glaub Dir eh, dass Du das auch programmieren kannst ;) v.a. auch viel schneller und mit weniger Zeilen Code als ich, aber hier geht's ja um keinen Wettbewerb, sondern darum, dass ich erste Basics lerne. Der allerschönste Code muss es derzeit noch nicht sein!
setting #14 invalid as it's not an issue with the program itself
On 07/19/2013 05:57 PM, Kay wrote:
@yipyip Den Style Guide werd ich mir bookmarken, danke!
Und ich glaub Dir eh, dass Du das auch programmieren kannst ;) v.a. auch viel schneller und mit weniger Zeilen Code als ich, aber hier geht's ja um keinen Wettbewerb, sondern darum, dass ich erste Basics lerne. Der allerschönste Code muss es derzeit noch nicht sein!
--- Reply to this email directly or view it on GitHub: https://github.com/kerstin/spielend-programmieren/issues/14#issuecomment-21258751
Ich will dir nicht zeigen, dass ich es schneller, besser, schoener kann. Ich will dir klarmachen, dass du dir einen riesigen Haufen an Spaghetticode aufbaust, bei dem keiner nachher mehr durchfindet. Du hast endlose ifs und elses und hier noch ne Variable und da auch noch. Du solltest: All die vielen kleinen Teilprobleme identifizieren. Fuer jedes Teilproblen ein kleine Funktion schreiben, die nur dieses Problem loest. Und dann mit mit diesen Funktionen ein groesseres Problem loesen... bis das Programm steht.
Beispiel output:
Du willst Text und Sprache. Also schonmal Probleme A und B. Bei Sprache einmal als Gesamttext und einmal buchstabiert. Also teilt sich B noch in 2 Probleme auf.
Dann kann man output definieren als (nur als Beispiel):
def output(text, opts=('print', 'letters')):
if 'print' in opts:
print(text)
if 'letters' in opts:
speak_letters(text)
elif 'words' in opts:
speak_words(text)
usw. und dann die einzelnen Funktionen definieren. Wenn noetig auch hier wieder Unterfunktionen bauen.
Ich moechte dich nur dazu bringen, etwas mehr in Richtung Codeorganisation mit Funktionen zu denken.
;-) Dirk P.S. Ich weiss, dass ich da etwas penetrant bin.
when working with espeak under linux, every time espeak makes sound output there are lot's of ugly text messages cluttering the screen due to sound card installation problems.
todo: research espeak manpage to avoid text output / research sound card error messages