Python 2.7 csv 模块仅 498 项

Posted

技术标签:

【中文标题】Python 2.7 csv 模块仅 498 项【英文标题】:Python 2.7 csv module only 498 items 【发布时间】:2019-07-28 08:41:31 【问题描述】:

使用 Spyder (Python 2.7) 我想组装一个脚本,该脚本可以附加、读取和打印来自 73 个传感器的数据,这些数据每周以 .txt 文件形式接收。输出应按列排序并且易于寻址。

输入样本:

"timestamp";"LT";"WW_DepthOfWater";...
"2019-01-21 00:00:29";"2019-01-01 19:56:05+00:00";"0.0";...

每个文件包含 73 列(当然)和 3348 行(标题 + 数据)。 到目前为止,我正在尝试仅读取文件的一列,但我仅使用以下代码从该列中获取最后 498 项:

import csv
with open('1_20190121_00_amcs.txt', 'r') as csvfile:
    reader = csv.reader(csvfile, delimiter=';')

    timestamp = []
    #LT = []
    #WW_DepthOfWater = []


    for row in reader:
        timestamp = row[0]
        #LT = row[1]
        #WW_DepthOfWater = row[2]


        #timestamp.append(timestamp)
        #LT.append(LT)
        #WW_DepthOfWater.append(WW_DepthOfWater)


        print (timestamp)
        #print (LT)
        #print (WW_DepthOfWater) 

如果我打印 2 列(例如时间戳和 LT),它会给出每列的最后 249 个项目,所以总共还是 498 个。

输出样本:

2019-01-27 23:51:04
2019-01-01 19:46:50+00:00
2019-01-27 23:54:05
2019-01-01 19:49:51+00:00
2019-01-27 23:57:06
2019-01-01 19:52:52+00:00

任何帮助将不胜感激。

【问题讨论】:

您的输入中似乎有一个 .txt 文件。这个文件的分隔符是什么?您指定了分号,但这样好吗? 我建议研究熊猫 将输入文件上传到公共位置,以便我们查看 分隔符也是我的第一个嫌疑人,但这并不能解释为什么不管打印的列数如何,我都会得到固定数量的项目。这是示例文件的链接:dropbox.com/s/h4ihapqfsmy16re/1_20190121_00_amcs.txt?dl=0 【参考方案1】:

我只是偶然发现了解决方案,即使它是暂时的: 在 Spyder/Tools/Preferences/IPython 控制台/显示选项卡/源代码中,我将缓冲区设置为最大行数。这应该有效,直到我达到那个数字。 不过,如果您对手头的任务有任何建议,请不要犹豫。

【讨论】:

以上是关于Python 2.7 csv 模块仅 498 项的主要内容,如果未能解决你的问题,请参考以下文章

在 Python 2.7 中运行 MySQL 以将 CSV 加载到 MySQL -

在 Python 中编写适用于 Windows 中的 Python 2.7+ 和 Python 3.3+ 的 .CSV 文件

2.7 CSV 模块想要 unicode,但不想要 unicode

如果未找到匹配项,Python 2.7 将仅用一行退出 while 循环

使用python脚本从csv文件中删除重复的行

Python 2.7 CSV 文件读/写 \xef\xbb\xbf 代码