gpt4 book ai didi

python - 每次在 python 中运行脚本时都需要生成一个新的文本文件并保存它

转载 作者:太空宇宙 更新时间:2023-11-04 01:09:15 24 4
gpt4 key购买 nike

我目前有一个程序可以附加到一个名为“ConcentrationData.txt”的现有文件中。但是,我想在每次运行程序时创建一个新的文本文件,最好使用包含日期和时间的文件名。这是我当前脚本的样子:

def measureSample(self):
sys.stdout.flush()
freqD1, trandD1, absoD1 = dev.getMeasurement(LED_TO_COLOR='D1'])
freqD2, trandD2, absoD2 = dev.getMeasurement(LED_TO_COLOR='D2'])
absoDiff= absoD1 - absoD2
Coeff= 1
Conc = absoDiff/Coeff
Conc3SD = '{Value:1.{digits}f'.format(Value = Conc, digits=3)
self.textEdit.clear()
self.textEdit.setText('Concentration is {0}'.format(Conc3SD))

timeStr = time.strftime('%m-%d-%Y %H:%M:%S %Z')
outFile = open('ConcentrationData.txt','a')
outFile.write('{0} || Concentration: {1}'.format(timeStr, Conc3SD))
outFile.close()

我该怎么做?

(另外,我对 python 很陌生,所以如果这听起来像一个愚蠢的问题,我很抱歉)。

最佳答案

你可以按照下面的行做一些事情

class my_class:
_data_fd = None

def __init__(self,create,filename):
if(create):
self._data_fd = open(filename,'w')

def __del__(self):
if(self._data_fd != None):
self._data_fd.close()

def measureSample(self):
##do something here
outFile = self._data_fd
outFile.write('{0} || Concentration: {1}'.format(timeStr, Conc3SD))


if __name__ == '__main__':
timeStr = time.strftime('%m-%d-%Y_%H_%M_%S_%Z') #use unerscore instead of spaces
filename = "{0}.{1}".format("Data.txt",timeStr)
imy_class = my_class(1,filename)
imy_class.measureSample()
imy_class.measureSample() ##call multiple times the fd remains open for the lifetime of the object
del imy_class ### the file closes now and you will have multiple lines of data

关于python - 每次在 python 中运行脚本时都需要生成一个新的文本文件并保存它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28708019/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com