Zachytavani udalosti v konzoli – Python – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Zachytavani udalosti v konzoli – Python – Fórum – Programujte.comZachytavani udalosti v konzoli – Python – Fórum – Programujte.com

 

Farundel0
Super člen
31. 3. 2006   #1
-
0
-

Řeším to už dost dlouho bez valného výsledku, takže je, myslím, čas se zeptat tady:
Jelikož konzole ve Windows je zoufale nemožná, a tak nemůžu použit knihovnu curses, našel jsem na Internetu modul [url=http://effbot.org/zone/console-handbook.htm]console[/url].
Potřebuji, aby mi program v cyklu zachytával vstup z klávesnice, a to konkrétně stisknuti některé ze šipek… Modul Console (pokud jsem dobře pochopil dokumentaci) má tři typy metod pro odchytávání události:

* get(), která z fronty událostí vezme první a vrátí instanci třídy Event, ale která v mém případě nepřichází v úvahu, protože pokud není stisknuta žádná klávesa, tak zablokuje program.

* getchar(), která čte, pokud jsem dobře pochopil, znak, takže je mi k ničemu.

a konečně metodu
* peek(), která sice při žádné události vrátí None (přesně jak bych potřeboval), ale zároveň událost z fronty neodstraní, takže program si během každého opakování cyklu „myslí“, že uživatel stisknul klávesu – alespoň pokud to dobře chápu.

Můžete mi někdo, prosím, poradit? Přehlídnul jsem v té dokumentaci něco? Abych to ještě jednou shrnul – potřebuji funkci, která by mi odchytávala stisk nějaké klávesy, vrátila hodnotu této klávesy (zajímají mě jenom čtyři) a pokud by žádná klávesa stisknuta nebyla, program by normálně běžel dál.
Pokud znáte nějaký lepší modul než Console (který mi přijde osobně nic moc, ale fakt jsem na nic lepšího nenarazil), tak budu taky rád.

Nahlásit jako SPAM
IP: ...–
To follow the path:
look to the master,
follow the master,
walk with the master,
see through the master,
become the master.
geon0
Grafoman
1. 4. 2006   #2
-
0
-

1. Možná je to blbost, ale:



if peek():
klavesa=get()

2. Jinak bych spíše zkusil navštěvovanější konferenci [url=http://www.py.cz/KonferenceDiskuze]python@py.cz[/url]

3. Pokud se ti podaří rozchodit - byl by to pěkný příspěvek na wiki ;-) Zatím tam nic takového není.

Nahlásit jako SPAM
IP: ...–
geon. volume doprava.
Farundel0
Super člen
1. 4. 2006   #3
-
0
-

1) To je ono!!! Diky!

Teda ale to by me ani nahodou nenapadlo...ted uz mi ta "Input" cast dokumentace dava trochu smysl :o) Fakt diky moc!

2) Zrovna vcera jsem si o ty konferenci na py.cz cetl a rekl jsem si, ze bych se tam toho mohl hodne naucit a ze to teda zkusim, ale malinko jsem s tim bojoval...pouzivas newsovej nebo emailovej pristup? A cim to prohlizis? Ja uz par dni zkousim operu a ona ma v sobe i mailovyho klienta i prohlizec news, tak jsem si rikal ze bych ji na to vyzkousel...nemam s temahle konferencema zadny zkusenosti, vzdycky se mi zdaly webovy fora lepsi, ale ted uz mam opacnej nazor :o)

3) To by mozna slo - prece jenom wiki je wiki, takze kdyz bych tam neco napsal blbe, kdokoliv to muze opravit...treba by to i nekomu pomohlo...

Nahlásit jako SPAM
IP: ...–
To follow the path:
look to the master,
follow the master,
walk with the master,
see through the master,
become the master.
geon0
Grafoman
1. 4. 2006   #4
-
0
-

Používám oba přístupy :-) Dřív jsem měl radši newsy, teď maily. Rozhodě to je lepší než webová fóra (jako třeba toto), protože sem musíš chodit ty a tamto chodí za tebou samo! A stačí dát Odpovědět a odpovědět, žádné čekání, než se ti načte stránka, pak to máš lokálně furt u sebe.

Naopak je pomalejší (méně výhodné) prohlížení archivu, ale kdo by se v tom stejně hrabal, ?e :-) ? No třeba já :-D A tak jsem udělal scriptík na stažení archivu těchto konferencí na lokál - je to někde na py.cz.

Nahlásit jako SPAM
IP: ...–
geon. volume doprava.
geon0
Grafoman
1. 4. 2006   #5
-
0
-

jo a používám klasiku - tb.

Nahlásit jako SPAM
IP: ...–
geon. volume doprava.
Farundel0
Super člen
2. 4. 2006   #6
-
0
-

OK, nejdriv jsem si rikal, ze nejlip vypadaj newsy, ale pak jsem si vsiml, ze zacatecnicka konference nebezi formou news (pokud jsem to spatne nepochopil), tak asi zkusim tu emailovou...vyzkousim a uvidim :o)

Takze pokud jsem to dobre pochopil - zalozil jsem si novej mail na googlu jen pro ucely konference, abych v tom nemel hokej...zaregistroval jsem se na tutor@py.cz a python@py.cz a pak si pro muj mail vytvoril v Thunderbirdu ucet...a predpokladam, ze to je vsechno, co je treba udelat :o)

Jak jsem rekl, nemam s timhle zadny zkusenosti (i maily jsem vzdycky vybiral pres web, veci jako TB mi prisly zbytecny), takze si to predstavuju tak, ze kazdej prispevek pridanej do tech konferenci mi prijde jakoby od odesilatele tutor(python)@py.cz normalne na mail jako bezna posta a ja na nej stejnym zpusobem odpovim, jako by to byl obycejnej mail, pricemz predmet emailu supluje nazev topicu ve webovych forech...chapu to dobre? :o)

Jestli je to opravdu tak, tak je to vyreseny fakt perfektne :o) mnohem lip nez obycejny webovy fora...

Nahlásit jako SPAM
IP: ...–
To follow the path:
look to the master,
follow the master,
walk with the master,
see through the master,
become the master.
geon0
Grafoman
2. 4. 2006   #7
-
0
-

Úplně přesně. akorát ted je tam menší provoz, nebo spíš je to hodně nárazové. týden nic a pak během jednoho dne 30 příspěvků.

Vidíš, mě připadají některé věci tak samozřejmé, že mi je až někdy trapné o tom takhle podrobně mluvit, ale vidím, že to třeba je. Tvůj popisek mírně poupravím a hodím na wiki.

Nahlásit jako SPAM
IP: ...–
geon. volume doprava.
Farundel0
Super člen
2. 4. 2006   #8
-
0
-

Hele ja nejsem zas tak uplne blbej ;o)))

Ne delam si srandu...ja se totiz radsi vzdycky zeptam, nez neco nekam pisu...nerad jsem za blbce ;o) Navic jak rikam, pro cloveka, kterej chodil jen na webovy fora, je tenhle "konferencni" zpusob diskuse trochu nezvyk...ale muze to mit zase pozitivni stranku - odradi to lenochy, kteri by se ptali na kazdou blbost :o)

Ja si taky rikal, ze pokud se mi to podari "rozchodit", tak tam na wiki dopisu neco ve stylu "KonferenceProNezasvecene", ale od tebe to bude prave "zasvecenejsi"...
Hlavne ta dvojjedinost email-news formy konference je podle me nejvice matouci...

Nahlásit jako SPAM
IP: ...–
To follow the path:
look to the master,
follow the master,
walk with the master,
see through the master,
become the master.
geon0
Grafoman
2. 4. 2006   #9
-
0
-

Hele, j? to tak nemyslel. Fakt.

Je???, sakra, jsem blbej, od tebe by to bylo mnohem lep?? - ten p??sp?vek na wiki - proto?e na to kouk?? o?ima t?ch, co p?ich?z? poprv?, a je?t? to um?? dob?e popsat. Tak?e to vytvo?!!! J? pak uprav?m (a nebo m??e? i ty - je to wiki, nen? to moje, i kdy? tam toho m?m nejv?c, to je fakt, ale na tom nesejde), co jsem tam ted p?idal j? a d?t odkaz na tvoje d?lo.

Nahlásit jako SPAM
IP: ...–
geon. volume doprava.
Farundel0
Super člen
2. 4. 2006   #10
-
0
-

Hehe, ja vim...

Tak jo, uz tu neco splacavam a pak ti to treba poslu na mail...

Nahlásit jako SPAM
IP: ...–
To follow the path:
look to the master,
follow the master,
walk with the master,
see through the master,
become the master.
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 9 hostů

Podobná vlákna

Zachytavani klavesnice — založil jiri463

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý