title: Tkinter bind not working when passed root.destroy directly
body: <p>I'm fairly new to python and tkinter. I'm working with python 2.7 and tkinter 8.5.</p>
  
  <p>I'm trying to exit my app when the escape key is pressed, and I ran into some odd behaviour:</p>
  
  <p>When I pass root.destoy as the argument to bind(), the app does nothing:</p>
  
  <pre><code>root = Tk()
  ...
  root.bind('&lt;Escape&gt;', root.destroy)
  </code></pre>
  
  <p>But if I define a function that calls root.destroy() and pass that as an argument to bind, everything works as expected:</p>
  
  <pre><code>def exit_app():
      root.destroy()
  root.bind('&lt;Escape&gt;', exit_app)
  </code></pre>
  
  <p>It also works if I pass a lambda like this:</p>
  
  <pre><code>root.bind('&lt;Escape&gt;', lambda f: root.destroy())
  </code></pre>
  
  <p>Can anyone explain what's happening here?</p>
  
  <p>Thanks</p>