Du hast also immer noch nicht begriffen, was Du falsch gemacht hast? Es wurde iirc sogar ein Link zu den Netiquetten gepostet...LP640 hat geschrieben:yo da stimm ich dir zu audax![]()
so sollte das net laufen
da fragt man was und naja nicht der rede wert
EXTREMES Problem HILFE!
- Hyperion
- Moderator
- Beiträge: 7478
- Registriert: Freitag 4. August 2006, 14:56
- Wohnort: Hamburg
- Kontaktdaten:
Aber erst in der zweiten Antwort. Diese (Antwort) übersieht man auch schon einmal sehr leicht ^^Hyperion hat geschrieben:Du hast also immer noch nicht begriffen, was Du falsch gemacht hast? Es wurde iirc sogar ein Link zu den Netiquetten gepostet...
Das Leben ist wie ein Tennisball.
LP640's Umgangsformen finde ich ebenfalls ungenügend. Wie kann man nur gegen fast alles auf einmal verstoßen, was sich in Foren gehört?
Weil's mich in der Sache aber dennoch interessiert hat und ich die Frage an sich gar nicht so blöd finde, hier noch entsprechender Windows-Code, wobei man das seiner Python-Distribution entsprechende SendKeys-Binary (".exe") installieren muß / sollte:
Viele Grüße
Weil's mich in der Sache aber dennoch interessiert hat und ich die Frage an sich gar nicht so blöd finde, hier noch entsprechender Windows-Code, wobei man das seiner Python-Distribution entsprechende SendKeys-Binary (".exe") installieren muß / sollte:
Code: Alles auswählen
import SendKeys
import threading
def send(keys):
SendKeys.SendKeys(keys,
pause = 0,
with_spaces = True,
with_tabs = True,
with_newlines = False,
turn_off_numlock = True)
wort = "Auto"
for i in range(10):
t = threading.Timer(0.2, send, (wort,))
t.start()
wort = raw_input("Wort: ")
danke für die antwort problembär das ist genau das, was ich gesucht habe
allerdings tritt noch ein problem auf:
ich benötige das ganze eigentlich dafür, funktionen einzugeben aber wenn ich jetzt zum beispiel eingebe:
x**2 dann kommt da x((2 raus
oder x*2 --> x(2
oder x+1 ---> x!
kann man das irgendwie beheben???
mfg
LP640
allerdings tritt noch ein problem auf:
ich benötige das ganze eigentlich dafür, funktionen einzugeben aber wenn ich jetzt zum beispiel eingebe:
x**2 dann kommt da x((2 raus
oder x*2 --> x(2
oder x+1 ---> x!
kann man das irgendwie beheben???
mfg
LP640
Eine Lösung für dieses Problem sieht bei mir so aus:
Aber erkläre mir doch bitte, warum es zu diesem Problem kommt.
Code: Alles auswählen
import SendKeys
import threading
def send(keys):
repls = {"*" : "+",
"/" : "7",
"(" : "8",
")" : "9"}
k = ""
for i in keys:
x = 0
if i == "+":
k += chr(29)
continue
for u in "^%~{}[]":
if i == u:
k += "{" + i + "}"
x = 1
break
if x == 1:
continue
for u in repls.keys():
if i == u:
k += "+(" + repls[u] + ")"
x = 1
break
if x == 1:
continue
k += i
SendKeys.SendKeys(k,
pause = 0,
with_spaces = True,
with_tabs = True,
with_newlines = False,
turn_off_numlock = True)
wort = "Auto"
for i in range(10):
t = threading.Timer(0.2, send, (wort,))
t.start()
wort = raw_input("Wort: ")
GrußKonfuzius sprach: "Wer nicht begeisterungsfähig ist, den unterrichte ich nicht. Wer nicht selbst nach Worten sucht, den leite ich nicht an. Wer mir nicht die restlichen drei Ecken zeigt, wenn ich eine Ecke aufgezeigt habe, den unterweise ich nicht weiter."
@problembär: Bei mir funktioniert es auch ohne den Timer einfach mitÜbrigens: Nette Idee mit SendKeys.
MfG
HWK
Code: Alles auswählen
send(wort)
wort = raw_input("Wort: ")
MfG
HWK
danke für eure hilfe
mit einem jahr python-schulerfahrung glaube ich, muss man das auch nicht
trotzdem nochmals vielen dank
mfg
LP640
ganz ehrlich ich hab mir das angeschaut aber keine ahnung wie das funktioniertAber erkläre mir doch bitte, warum es zu diesem Problem kommt.

mit einem jahr python-schulerfahrung glaube ich, muss man das auch nicht

trotzdem nochmals vielen dank
mfg
LP640
so hab auch direkt wieder ne neue frage:
ich will eine zahl runden, jedoch hab ich net herausbekommen wie das geht
habs mit dem befehl round() versucht aber irgendwie nicht hinbekommen
wie kann ich zum beispiel die variable "x" mit dem wert "1.2645343248" (also x=1.2645343248) auf die zweite stelle hinterm komma runden???
kann mir jemand helfen???
mfg
LP640
ich will eine zahl runden, jedoch hab ich net herausbekommen wie das geht
habs mit dem befehl round() versucht aber irgendwie nicht hinbekommen
wie kann ich zum beispiel die variable "x" mit dem wert "1.2645343248" (also x=1.2645343248) auf die zweite stelle hinterm komma runden???
kann mir jemand helfen???
mfg
LP640
Code: Alles auswählen
>>> x = 1.2645343248
>>> round(x)
1.0
>>> round(x, 2)
1.26
the more they change the more they stay the same
oh so ganz klappt das bei mir nicht
1 beispiel) funktioniert
2 beispiel) funktioniert nicht richtig
3 beispiel) funktioniert auch nicht richtig
wieso kommen da so viele 999999999 oder 0000000001 vor und wie kann man das beheben???
mfg
LP640
1 beispiel) funktioniert
Code: Alles auswählen
>>> x=1.2667434534545
>>> x=round(x,2)
>>> x
1.27
Code: Alles auswählen
>>> x=1.4343243434
>>> x=round(x,2)
>>> x
1.4299999999999999
Code: Alles auswählen
>>> x=1.34546776
>>> x=round(x,2)
>>> x
1.3500000000000001
mfg
LP640
Hab ich auch nie richtig begriffen.LP640 hat geschrieben:wieso kommen da so viele 999999999 oder 0000000001 vor
Meistens so:LP640 hat geschrieben:und wie kann man das beheben???
Code: Alles auswählen
print "%.2f" % 1.4343598
Unter http://de.wikipedia.org/wiki/Flie%C3%9F ... taltechnik findet sich eine Erklärung.problembär hat geschrieben:Hab ich auch nie richtig begriffen.LP640 hat geschrieben:wieso kommen da so viele 999999999 oder 0000000001 vor
Erstmal danke für die weiteren Hinweise zur float-Präzision (kannte das sonst vor allem aus perlfaq4, dort auch zu Perl's "round()"; das Problem gibt's ja in allen Sprachen).
Noch zu der vorigen Frage (spätestens jetzt kommt man bei den vielen Fragen in einem Thread durcheinander):
Aber mit dem "readline"-Modul (bzw. entsprechend "pyreadline" für Windows) hab' ich's nicht hinbekommen. Mit "readline.insert_text()" kann ich zwar Text in den Puffer von "raw_input()" (stdin) bekommen, aber er wird bei mir auch mit "readline.redisplay()" nicht angezeigt. Hatte da vielleicht jemand mehr Glück?
Viele Grüße
Noch zu der vorigen Frage (spätestens jetzt kommt man bei den vielen Fragen in einem Thread durcheinander):
Danke! Ist natürlich ganz übles Hacking ...HWK hat geschrieben:Übrigens: Nette Idee mit SendKeys.
Aber mit dem "readline"-Modul (bzw. entsprechend "pyreadline" für Windows) hab' ich's nicht hinbekommen. Mit "readline.insert_text()" kann ich zwar Text in den Puffer von "raw_input()" (stdin) bekommen, aber er wird bei mir auch mit "readline.redisplay()" nicht angezeigt. Hatte da vielleicht jemand mehr Glück?
Viele Grüße
Unter Linux geht bei mir (doch) auch das:
(Ohne Timer klappt das bei mir nicht.)
Unter Windows geht das so nicht, weil pyreadline keine ".redisplay()"-Methode bietet.
Gruß
Code: Alles auswählen
import readline
import threading
def send(a):
readline.insert_text(a)
readline.redisplay()
wort = "Auto"
for i in range(10):
t = threading.Timer(0.2, send, (wort, ))
t.start()
wort = raw_input("Wort: ")
Unter Windows geht das so nicht, weil pyreadline keine ".redisplay()"-Methode bietet.
Gruß
hi leute hab wieder ne neue frage
und zwar möchte ich, dass in dem xturtle fenster der mauszeiger als eine von mir zuvor erstellte gif datei zu sehen ist
ich kenne bisher nur den folgenden befehl:
damit gehen aber nur schon vorhandene mauszeiger
wie geht das mit nem selbst erstellten?
mfg
LP640
und zwar möchte ich, dass in dem xturtle fenster der mauszeiger als eine von mir zuvor erstellte gif datei zu sehen ist
ich kenne bisher nur den folgenden befehl:
Code: Alles auswählen
getcanvas().config(cursor="crosshair")
wie geht das mit nem selbst erstellten?
mfg
LP640
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Wenns eine neue Frage ist, dann stell sie in einem neuen Thread. Das ist nicht dein privater Support-Thread.LP640 hat geschrieben:hi leute hab wieder ne neue frage
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
@problembär: Der Timer ist ein ziemlich schmutziger Trick, "readline.set_pre_input_hook()" ist die richtige Lösung. Sinnvollerweise strickt man daraus dann einen Kontextmanager.
Der Hintergrund ist, dass "readline.redisplay()" wohl nur funktioniert, wenn readline zur Anzeige bereit ist. Das ist irgendwann während des "raw_input()"-Aufrufs der Fall, nachdem der Prompt angezeigt wurde. Mit dem Timer landest Du mit Glück irgendwo in der Nähe dieses Zeitpunkts.
Der Hintergrund ist, dass "readline.redisplay()" wohl nur funktioniert, wenn readline zur Anzeige bereit ist. Das ist irgendwann während des "raw_input()"-Aufrufs der Fall, nachdem der Prompt angezeigt wurde. Mit dem Timer landest Du mit Glück irgendwo in der Nähe dieses Zeitpunkts.