保存 CSV 文件,使其名称本身就是一个字符串

Posted

技术标签:

【中文标题】保存 CSV 文件,使其名称本身就是一个字符串【英文标题】:Saving CSV file such that its name is itself a string 【发布时间】:2019-07-03 18:09:09 【问题描述】:

我的代码是关于获取传感器值并将它们附加到 csv 文件中。这个 csv 文件太长了,我想在 1000 行之后将它压缩成 zip 文件。为此,我希望我的 csv 文件第一次以文件名 Logger1 保存,并且在此 logger1 文件超过 1000 行之后,它应该转换为 zip 文件,并在 'i' 增加 1 时将其删除。现在,在此之后,进一步的数据应保存在 csv 文件中,文件名为 logger2。如何添加'i' 以及文件名。我尝试使用str(i),但它不起作用,因为文件名本身就在引号中。

export_csv = x.to_csv (r'/home/pi/Logger + str(i).csv', 
             index = None, mode='a', header=False)
input_file = open("Logger + str(i).csv","r+")
reader_file = csv.reader(input_file)
l = len(list(reader_file))
if (l > 1000) :
 jungle_zip = zipfile.ZipFile('Logger + str(i).zip', 
              'w')
 jungle_zip.write('Logger + str(i).csv', 
                  compress_type=zipfile.ZIP_DEFLATED)
 jungle_zip.close()
 os.remove("Logger + str(i).csv")
 i +=1

【问题讨论】:

【参考方案1】:

试试下面的

'Logger' + str(i) + '.zip'

而不是

'Logger + str(i).zip'

因为 str(i) 不被视为字符串中的函数

【讨论】:

以上是关于保存 CSV 文件,使其名称本身就是一个字符串的主要内容,如果未能解决你的问题,请参考以下文章

excel另存为csv打开后有大量逗号是怎么回事?

访问 VBA 将 CSV 文件导出为 UTF-8

使用 JMeter,如何从 API 的响应正文中提取字符串并将其保存到 csv 文件?

用 CSV 中的值替换字符串的一部分,将所有值保存在 CSV PYTHON

我们如何逐行打印字符并将其保存到 PLSQL 中的 csv 或文本文件

CSV 写入需要唯一分隔符的文本字符串