Как напечатать список целых чисел в QPlainTextEdit? - PullRequest
1 голос
/ 01 октября 2019

У меня есть список

temp = [1, 2, 3, 4, 5, 6, 7, 8] 

Я знаю, что для печати на консоли в виде строк, я бы просто сделал

for i in range(0, len(temp)):
    temp[i] = str(temp[i])

и получил бы

1
2
3
...

Как я могу это сделать, поскольку я не думаю, что это может быть сделано рекурсивно, когда я устанавливаюPlainText в QPlainTextEdit? Я предполагаю, что мне придется удалить запятые и скобки и вставить \ n, из которого я начал искать решение своих проблем с этим сообщением: Как напечатать список с целыми числами без скобок, запятых и без кавычек?

Ответы [ 2 ]

2 голосов
/ 01 октября 2019

Вам просто нужно преобразовать числа в строку и добавить их с помощью appendPlainText () :

import sys
from PyQt5 import QtWidgets


if __name__ == "__main__":
    app = QtWidgets.QApplication(sys.argv)

    temp = [1, 2, 3, 4, 5, 6, 7, 8]

    w = QtWidgets.QPlainTextEdit()
    for i in temp:
        w.appendPlainText(str(i))
    w.show()
    sys.exit(app.exec_())

Или, как вы указали, вы можете использовать join () :

w.setPlainText("\n".join(map(str, temp)))
0 голосов
/ 01 октября 2019
import sys
from PyQt5.QtWidgets import (QPlainTextEdit, QApplication)

if __name__ == "__main__":
    app = QApplication(sys.argv)
    temp = [1, 2, 3, 4, 5, 6, 7, 8]
    w = QPlainTextEdit()
    while temp:
        w.appendPlainText(str(temp.pop(0)))
    w.show()
    sys.exit(app.exec_())
...