Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #53882

Re: Monitor key presses in Python?

From Dave Angel <davea@davea.name>
Subject Re: Monitor key presses in Python?
Date 2013-09-09 18:19 +0000
References <57051d11-abd9-4621-9618-1574cd37545c@googlegroups.com>
Newsgroups comp.lang.python
Message-ID <mailman.188.1378750802.5461.python-list@python.org> (permalink)

Show all headers | View raw


On 9/9/2013 13:39, eamonnrea@gmail.com wrote:

> Is there a way to detect if the user presses a key in Python that works on most OS's? I've only seen 1 method, and that only works in Python 2.6 and less.  If you get the key, can you store it in a variable?
>
> Also, is there a way to create a callback in Python?

What is usually meant by "a callback" is a function object.  In Python,
functions are first class objects.  You just use the function name
without the parentheses.

def my_function():
    print "Executing my_function"

b = my_function   # b is now a function object

b() 

Likewise, instead of storing it in a global, you might pass it to a
method which stores it as an object attribute, or whatever.

Also of interest is that you can easily create partial functions, where
some of the parameters are already decided.  See the docs for
functools.partial

And if you're trying to use a method as a callback, you can store the
bound-method, which is effectively a partial including the self
parameter.

Finally, don't forget lambda functions, which can be useful if you're
trying to create a simple function and don't need a name for it.


-- 
DaveA

Back to comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Monitor key presses in Python? eamonnrea@gmail.com - 2013-09-09 10:39 -0700
  Re: Monitor key presses in Python? Dave Angel <davea@davea.name> - 2013-09-09 18:19 +0000
  Re: Monitor key presses in Python? John Gordon <gordon@panix.com> - 2013-09-09 18:40 +0000
  Re: Monitor key presses in Python? Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-09-09 23:37 +0000
  Re: Monitor key presses in Python? Nobody <nobody@nowhere.com> - 2013-09-10 02:33 +0100
  Re: Monitor key presses in Python? Michael Torrie <torriem@gmail.com> - 2013-09-09 20:43 -0600
  Re: Monitor key presses in Python? Grant Edwards <invalid@invalid.invalid> - 2013-09-10 14:18 +0000
    Re: Monitor key presses in Python? eamonnrea@gmail.com - 2013-09-14 10:44 -0700
      Re: Monitor key presses in Python? Roy Smith <roy@panix.com> - 2013-09-14 14:03 -0400
        Re: Monitor key presses in Python? eamonnrea@gmail.com - 2013-09-14 11:10 -0700
          Re: Monitor key presses in Python? Dave Angel <davea@davea.name> - 2013-09-14 22:03 +0000
      Re: Monitor key presses in Python? Paul Rubin <no.email@nospam.invalid> - 2013-09-14 11:42 -0700

csiph-web