Вот программа которая должна сохранять данные в файл и открывать их в текстовом поле но добавляется только то последняя строка, в чем моя ошибка, помогите пожалуйста.
from PyQt5.QtWidgets import *
import sys
class MyWindow(QWidget):
def __init__(self):
super(MyWindow, self).__init__()
self.resize(300, 250)
vb = QVBoxLayout()
self.setLayout(vb)
self.but1 = QPushButton('Save')
self.text1 = QTextEdit()
self.le1 = QLineEdit()
self.le2 = QLineEdit()
self.but2 = QPushButton('Open')
self.text2 = QTextEdit()
self.le3 = QLineEdit()
self.le4 = QLineEdit()
vb.addWidget(self.but1)
vb.addWidget(self.text1)
vb.addWidget(self.le1)
vb.addWidget(self.le2)
vb.addWidget(self.but2)
vb.addWidget(self.text2)
vb.addWidget(self.le3)
vb.addWidget(self.le4)
self.but1.clicked.connect(self.save_file)
self.but2.clicked.connect(self.open_file)
self.show()
def save_file(self):
f = open( "test.txt" ,'w' )
for item in self.text1.toPlainText():
f.write(item)
f.write('\n')
f.write("---")
f.write('\n')
f.write(self.le1.text())
f.write('\n')
f.write(self.le2.text())
f.write('\n')
f.close()
def open_file(self):
f = open('test.txt')
for line in f.readlines():
self.text2.setText(line)
f.close()
if __name__ == '__main__':
app = QApplication(sys.argv)
window = MyWindow()
sys.exit(app.exec_())