我想编写一个函数,将字典转换为 Gtk-ListStore,其中 Gtklist-store 应该有 n 列,第一个是字典的键和值,其余的是空字符串。N 应由用户给出。
ListStore 的构造函数需要列的类型。如何以正确的数字指定它们?
这是仅支持 2 或 3 列来演示问题的函数:
def dict2ListStore(dic, size=2):
if size == 2:
liststore = Gtk.ListStore(str, str)
for i in dic.items():
liststore.append(i)
return liststore
elif size == 3:
liststore = Gtk.ListStore(str, str, str)
for i in dic.items():
l = list(i)
l.append("")
liststore.append(l)
return liststore
else:
print("Error!")
return