首页 > 解决方案 > 如何使用 python3 获取 .csv 文件的最后一行?

问题描述

我正在用 python 编写一个小脚本,用于将最后添加的行添加到 .csv 文件中,对其进行处理并将其写入 data.txt 文件,但是当我尝试反转 csv 阅读器时,它给了我一个错误。(csv reader not subscriptablereverse list not subscriptable)

我试过像

raw_data = csv.reader(csvFile, delimiter=",")[::-1]

reversed(list(csv.reader(csvFile, delimiter=",")))

但这些都不起作用,

这是一段代码

with open("data-2019-09.csv", "rt") as csvFile:
    raw_data = csv.reader(csvFile, delimiter=",")[::-1]
    data = [
        raw_data[0][0],
        raw_data[0][7],
    ]
    self._file_object.write(data)

我想做的事情是这样的

open "data-2019-09.csv" as csvFile:
    take the last line and store it in raw_data
    data = [
        take the first variable in raw_data,
        take the eighth variable in raw_data,
    ]
    print data

但我不明白如何走最后一行

标签: python-3.xcsv

解决方案


由于您只想获取给定csv的最后一行,我建议使用numpy.loadtxt

import numpy as np
np.loadtxt('example.csv', delimiter=',')

上面的代码将以二维数组的形式为您提供 csv 文件。


推荐阅读