title: 'Undefined' parameters in function calls in python
body: <p>Whenever I program something in python with <code>Tkinter</code>, the code looks like this:</p>
  
  <pre><code>    from Tkinter import *
  
      class GUI():
  
          def __init__(self, master):
  
              self.master = master # master is an instance of Tk
              self.master.title("") # set the name of the window
  
              self.frame = Frame(self.master, width=800, height=500, bg="#eeeeee")
              # 800, 500 and "#eeeeee" are examples of course
              self.frame.pack()
  
              self.canvas = Canvas(self.frame, width=800, height=500, bg="ffffff")
              self.canvas.place(x=0, y=0)
              #mostly there are some other widgets
  
          # here are obviously other methods
  
      def main():
  
          root = Tk()
          app = GUI(root) # root and app.master are synonyms now
          app.master.mainloop()
  
      if __name__ == '__main__':
  
          main()
  </code></pre>
  
  <p>My problem is, I don't really understand why <code>Frame(width=800, height=500)</code> or <code>place(x=0, y=0)</code> is working: I didn't define the parameters <code>height</code>, <code>width</code>, <code>x</code> and <code>y</code>. Looking at the code in the <code>Tkinter</code> - module, the functions expect a paramter called <code>*args</code> or <code>**kw</code>. I know how to use them (at least well enough to develop some small applications), but I don't know how to define a function which uses this parameters. I feel like I don't know really much about this part of python, though I can work with it.
  <br/><br/>
  So my Question is:
  <br/>
  how can I define a function, what is called with the following Syntax:</p>
  
  <pre><code>functionName(parameterName1 = value, paramterName2 = value, ...)
  </code></pre>
  
  <p>I don't need to know how to make a function what accepts a varying amount of parameters (combined with my problem), but it would be fine too.</p>