小编Hol*_*bau的帖子

更有效的方法来创建不同类的类实例?

假设我们有一个功能classes_init.它接收列表或其他类型的信息,用于初始化不同类型的类的许多实例,例如:

["spam", 24]
["eggs", 10]
["bacon", 20]
...
Run Code Online (Sandbox Code Playgroud)

这些列表的索引0表示它应该是什么类型的类.我发现初始化特定类的实例的最佳方法是通过以下方式:

def classes_init(xlists):
    classlist = list()
    if xlists[0] == "spam":
        classlist.append(Spam(number=xlists[1]))
    elif xlists[0] == "eggs":
        classlist.append(Eggs(number=xlists[1]))
    elif xlists[0] == "bacon":
        classlist.append(Bacon(number=xlists[1]))
    ... and so on ...
Run Code Online (Sandbox Code Playgroud)

有更有效的方法吗?这是很多重复,所以它几乎肯定意味着这是一种错误的方法.

python oop initialization class python-3.x

3
推荐指数
1
解决办法
60
查看次数

在Gtk.TextView中使用标记

我一直在尝试找到在Python GObject中Gtk.TextView和一起使用Pango标记的方法,但似乎此功能仅适用于工具提示和标签。具有方法,但需要作为输入,并且必须具有指定的长度。Gtk.TextBufferGtk.TextBufferinsert_markupGtk.TextIter

这里的问题是我只想Gtk.TextView显示文本而不能编辑。因此,尽管我认为我了解您如何使用Gtk.TextTag可编辑/可选文本来实质性地更改其外观(甚至行为),但我不确定完全如何处理静态文本。对此类应用标记的最简单方法是什么?

例如:将“ <b>某些文本</ b>”转换为“ 某些文本 ”(或使用哪个标签)

python gtk user-interface pygtk pygi-aio

1
推荐指数
1
解决办法
1223
查看次数