如何将多个先前形成的列表插入到 QTextWidget 中?

How to insert multiple previously formed lists into QTextWidget?

我想在 QTextEdit 中显示多个列表,但是所有插入文本的函数都只接受字符串。在阅读 QTextEdit 的文档时,它说 QTextCursor 可以处理列表,但是我也无法使其 insertList() 工作。

以下函数生成六个列表,我想显示它们:

def gen_reading_frames(self):
    frames = []
    frames.append(self.translate_seq(0))
    frames.append(self.translate_seq(1))
    frames.append(self.translate_seq(2))
    tmp_seq = bio_seq(self.reverse_complement(), self.seq_type)
    frames.append(tmp_seq.translate_seq(0))
    frames.append(tmp_seq.translate_seq(1))
    frames.append(tmp_seq.translate_seq(2))
    del tmp_seq
    return frames

这些是我的方法:

# 1.: 
tmp_rf = qtg.QTextListFormat(seq.gen_reading_frames())
self.textEditReadingFrames.insertList(tmp_orf)
# 2.: 
tmp_rf = self.textEditReadingFrames.textCursor()
tmp_rf.insertList(seq.gen_reading_frames())

都抛出类型错误,第一个是因为QTextListFormat不接受列表,第二个是因为insertList只接受QTextListFormat。

那么如果这两个都不接受列表,如何在QTextEdit中显示列表呢? 还是我必须将它们转换为字符串,因为没有其他方法?

我希望这个问题没有被问过,但是在搜索论坛和 Qt 文档时我找不到答案。

如果有人需要对此的答案,我将字符串一一插入:

rfs = seq.gen_reading_frames()
for rf in rfs:
      self.textEditReadingFrames.append(f'{rf}\n')
del rfs