is there anyway to make this shorter? i hate having these big blocks of similar-looking code, very unaesthetic. maybe doesnt matter good-code-wise? anyway can i make some function that makes this shorter? like put the etiquettes on the button froma string of '123+456-789*0Cr/' ? problem is the command and lambda-func for each button is different.
self.btnDisplay = Button(self,text='1',command=lambda n="1":self.Display(n),width=2,height=2) self.btnDisplay.grid(row=3, column=0) self.btnDisplay = Button(self,text='2',command=lambda n="2":self.Display(n),width=2,height=2) self.btnDisplay.grid(row=3, column=1) self.btnDisplay = Button(self,text='3',command=lambda n="3":self.Display(n),width=2,height=2) self.btnDisplay.grid(row=3, column=2) self.btnDisplay = Button(self,text='+',command=lambda n="+":self.Display(n),width=2,height=2) self.btnDisplay.grid(row=3, column=3) self.btnDisplay = Button(self,text='4',command=lambda n="4":self.Display(n),width=2,height=2) self.btnDisplay.grid(row=4, column=0) self.btnDisplay = Button(self,text='5',command=lambda n="5":self.Display(n),width=2,height=2) self.btnDisplay.grid(row=4, column=1) self.btnDisplay = Button(self,text='6',command=lambda n="6":self.Display(n),width=2,height=2) self.btnDisplay.grid(row=4, column=2) self.btnDisplay = Button(self,text='-',command=lambda n="-":self.Display(n),width=2,height=2) self.btnDisplay.grid(row=4, column=3) self.btnDisplay = Button(self,text='7',command=lambda n="7":self.Display(n),width=2,height=2) self.btnDisplay.grid(row=5, column=0) self.btnDisplay = Button(self,text='8',command=lambda n="8":self.Display(n),width=2,height=2) self.btnDisplay.grid(row=5, column=1) self.btnDisplay = Button(self,text='9',command=lambda n="9":self.Display(n),width=2,height=2) self.btnDisplay.grid(row=5, column=2) self.btnDisplay = Button(self,text='*',command=lambda n="*":self.Display(n),width=2,height=2) self.btnDisplay.grid(row=5, column=3) self.btnDisplay = Button(self,text='0',command=lambda n="0":self.Display(n),width=2,height=2) self.btnDisplay.grid(row=6, column=0) self.btnDisplay = Button(self,text='C',command=self.Clean,width=2,height=2) self.btnDisplay.grid(row=6, column=1) self.btnDisplay = Button(self,text='r',command=lambda n="r":self.Display(n),width=2,height=2) self.btnDisplay.grid(row=6, column=2) self.btnDisplay = Button(self,text='/',command=lambda n="/":self.Display(n),width=2,height=2) self.btnDisplay.grid(row=6, column=3) -- http://mail.python.org/mailman/listinfo/python-list