Search code examples
pythonbuttontkinterreadability

Python line is too long, how can i make it more readable?


for pic,fn,xoff in [(self.PNew,self.New,0),(self.POpen,self.Open,0),(self.PSave,self.Save,0),(self.POrigin,self.SetOrigin,20),(self.PFiducial,self.SetFiducial,0),(self.PLine,self.AddLine,20),(self.PPoint,self.AddPoint,0),(self.PMove,self.AddMove,0),(self.PCircle,self.AddCircle,0),(self.PCall,self.AddCall,0)]: Button(ButtonRow,image=pic,command=fn).pack(side=LEFT,padx=(xoff,0))

Solution

  • items = [
        (self.PNew, self.New, 0),
        (self.POpen, self.Open, 0),
        (self.PSave, self.Save, 0),
        (self.POrigin, self.SetOrigin, 20),
        (self.PFiducial, self.SetFiducial, 0),
        (self.PLine, self.AddLine, 20),
        (self.PPoint, self.AddPoint, 0),
        (self.PMove, self.AddMove, 0),
        (self.PCircle, self.AddCircle, 0),
        (self.PCall, self.AddCall, 0)
    ]
    for pic, fn, xoff in items: 
        Button(ButtonRow, image=pic, command=fn).pack(side=LEFT, padx=(xoff, 0))