【发布时间】:2015-12-17 05:24:35
【问题描述】:
这是我目前所拥有的:
import csv
fp = open('C:/TemporaryDataFiles/RawData.csv', 'w')
csvFile = csv.writer(fp)
for number, begin, end, test in rows:
if len(test.split()) <= 100:
print("Row deleted!")
print(len(test.split()))
stock=[]
begin=[]
end=[]
test=[]
else:
RowsToWrite= [str(number), str(begin), str(end), str(test)]
csvFile.writerows(RowsToWrite)
我正在尝试遍历一个名为 rows 的大表,该表有四个子组件。它有number(代表产品的编号)、begin 时间、end 时间和一个test 列,其中有一个描述。
我正在尝试查看 test 中的单词是否少于 100 个。如果没有,则转到 if...else 语句的 else 部分,然后写入 RawData.csv 文件。
这不会产生任何错误,但是,它也不会给出正确的输出。有一些条目,都在 100 字以下,漏掉了。
我已经尝试了我能想到的尽可能多的迭代,但我觉得这里好像缺少一些基本的东西。
感谢任何帮助。
【问题讨论】:
-
数据是什么样的?
-
数字、开始和结束字段都很短——每个字段只有几个字符。描述要大得多——通常超过 100 个字。
-
您检查了错误删除的描述吗?有时标点符号和特殊字符前后可以有空格,导致它们被计为单词。
-
是的,我已经做到了——它们只是标准的文本/单词。没有什么会触发像你所说的那样的事情。
标签: python csv if-statement for-loop