title: Tkinter button bind throws extra argument error
body: <p>I am trying to write <code>tkinter</code> code that calls a function either when a button is clicked or when enter is clicked when the button is in focus. I have the following code:</p>
  
  <pre><code>import tkinter as tk
  
  m = tk.Tk(className="My window")
  def callback():
      print("Ice cream weather")
  
  butt = tk.Button(m, text="My button", width=25, command=callback)
  butt.grid()
  butt.focus_set()
  butt.bind('&lt;Return&gt;', callback)
  m.mainloop()
  </code></pre>
  
  <p>But when I run it and press <code>Enter</code>, I get the following error:</p>
  
  <pre><code>Traceback (most recent call last):
    File "C:\Users\chiller\AppData\Local\Programs\Python\Python37\lib\tkinter\__init__.py", line 1705, in __call__
      return self.func(*args)
  TypeError: callback() takes 0 positional arguments but 1 was given
  </code></pre>
  
  <p>I found a solution, which I posted below, but I am wondering if there is a simpler or neater fix.</p>