我有一个Python代码,它将一些数据记录到.csv文件中。
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QHBoxLayout, QGroupBox, QDialog, QVBoxLayout, \
QGridLayout
from PyQt5.QtCore import pyqtSlot
from DirListing import Listing
class App(QDialog):
def __init__(self):
super().__init__()
self.title = 'Grid Test'
self.left = 10
self.top = 10
self.width = 320
self.height = 500
self.initUI()
def initUI(self):
self.setWindowTitle(self.title)
self.setGeometry(self.left, self.top, self.width, self.height)
self.createGridLayout()
windowLayout = QVBoxLayout()
windowLayout.addWidget(self.horizontalGroupBox)
self.setLayout(windowLayout)
self.show()
def createGridLayout(self):
self.horizontalGroupBox = QGroupBox("Grid")
layout = QGridLayout()
counter = 0
for obj in Listing:
button = QPushButton(obj.filename)
button.clicked.connect(self.on_click)
layout.addWidget(button, counter, 0)
counter = counter + 1
self.horizontalGroupBox.setLayout(layout)
@pyqtSlot()
def on_click(self):
print("Halp!")
def lower(self):
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = App()
sys.exit(app.exec_())
上面的代码是核心部分,它在.csv文件中生成连续数据
logging_file = 'test.csv'
dt = datetime.datetime.now()
f = open(logging_file, 'a')
f.write('\n "{:%H:%M:%S}",{},{}'.format(dt,x,y,))
现在我希望在此数据的第一行添加以下行。 time,data1,data2.I期望输出为
"00:34:09" ,23.05,23.05
"00:36:09" ,24.05,24.05
"00:38:09" ,26.05,26.05
... etc.,
我尝试了很多方法。那些方法并没有把我的结果作为首选格式。但是我无法得到我预期的结果。
请帮我解决问题。
答案 0 :(得分:0)
我建议专门编写一个用于创建和管理日志的类。
在创建时,使用预期的第一行初始化文件(不要忘记\ n字符! ),并跟踪有关该日志的任何必要信息(它创建的日志的名称,它的位置等)。然后你可以让课程“写”'对于日志(真的附加日志),您可以根据需要创建新日志,并且可以检查现有日志,并做出有关更新现有内容或删除现有内容并重新开始的决定。