我有一个ListStore
,其中包含很多字段,其中大多数都是相同的:
store = gtk.ListStore(str,str,str,str,str,str,str,str,
gtk.gdk.Pixbuf,gtk.gdk.Pixbuf,gtk.gdk.Pixbuf,gtk.gdk.Pixbuf,
gtk.gdk.Pixbuf,gtk.gdk.Pixbuf,gtk.gdk.Pixbuf,gtk.gdk.Pixbuf,
gtk.gdk.Pixbuf,gtk.gdk.Pixbuf,gtk.gdk.Pixbuf,gtk.gdk.Pixbuf,
gtk.gdk.Pixbuf,gtk.gdk.Pixbuf,str,)
有没有比这种可怕的重复更好的方式?
编辑:所以最终:
store = gtk.ListStore( *(8*(str,)+14*(gtk.gdk.Pixbuf,)+(str,)) )
我猜的可读性较差,但程序性更具适应性
答案 0 :(得分:2)
ListStore
代码,请将它们打包到namedtuple
中,并确保它们不会影响内置名称。ListStore
代码,请将它们打包成元组并通过gtk.ListStore(*yourtuple)
解压缩参数。