如何使用Python在CSV文件中跳过多行

时间:2015-02-18 20:29:06

标签: python csv

有人可以给我最好的方法来跳过CSV文件中的前两行。我正在尝试使用代码查找和替换CSV文件中的值,但我希望忽略前两行并从第3行开始。

谢谢!

import csv

reps = {
    '+' : 'Positive',
    '++' : 'Strong Positive',
    '-' : 'Negative',
    '+/-' : 'Resonable'}

def replace_all(text, dic):
    for i, j in reps.items():
        text = text.replace(i, j)
    return text

with open('apitest.csv','r') as f:
    text=f.read()
    text=replace_all(text,reps)

with open('apitest.csv','w') as w:
    w.write(text)

1 个答案:

答案 0 :(得分:0)

您当前的代码是将整个文件作为单个内容读取,将该单个内容传递给replace_all,然后将返回的单个内容写回原始文件(这是一个巨大的错误 - 不要对输出使用相同的文件名,而不至少在某处复制它。

一些想法:

  • text = f.readlines()
  • text = f.read(); text = text.split('\n')

然后

new_text = []
for line in text:
  new_text.append(replace_all(line))
...
w.write('\n'.join(new_text))

仍有一些作品遗失,但这应该可以帮助你。