'_csv.writer'对象没有属性'write' [英] '_csv.writer' object has no attribute 'write'

查看:2812
本文介绍了'_csv.writer'对象没有属性'write'的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我不知道这里有什么问题。我有一个csv文件我想过滤。我想删除以'@'开头的所有行和第三列是字符串'chrM'的所有行。我基本上把我的代码设置为像这里的答案:

I am not sure what the problem is here. I have a csv file I want to filter. I want to remove all lines starting with '@' and all lines where the third column is the string 'chrM'. Im basically setting my code up to be like the answer here:

TypeError:期望的字符缓冲对象

但是会收到错误。

import re
import csv

inputSamFile = 'excerpt'
outSamFile = 'filternoM'

with open(inputSamFile) as inputSam, open(outSamFile, 'wt') as outSam:
    inputSamCont = csv.reader(inputSam, delimiter = '\t')
    outSamCont = csv.writer(outSam, delimiter = '\t')
    for line in inputSamCont:
        if line[0].startswith('@'):
            continue
        elif line[2] == 'chrM':
            continue
        else:
            outSamCont.write(line)

跟踪(最近一次调用):
文件filterMito.py,第19行,在
中outSamCont.write(ProcessLine(line))
AttributeError: _csv.writer'对象没有属性'write'

Traceback (most recent call last): File "filterMito.py", line 19, in outSamCont.write(ProcessLine(line)) AttributeError: '_csv.writer' object has no attribute 'write'

我做错了什么

推荐答案

您可能正在寻找 .writerow()

,因为我下面使用的文档使用 .write(),但 csv.writer objects using .writerow()

I also ran into this problem, as the documentation I was following used .write(), but csv.writer objects use .writerow().

这篇关于'_csv.writer'对象没有属性'write'的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆