我正在尝试制作一个非常简单的"计数器",它应该跟踪我的程序执行次数.
首先,我有一个只包含一个字符的文本文件: 0
然后我打开文件,将其解析为int,添加1到值,然后尝试将其返回到文本文件:
f = open('testfile.txt', 'r+')
x = f.read()
y = int(x) + 1
print(y)
f.write(y)
f.close()
Run Code Online (Sandbox Code Playgroud)
我想y覆盖文本文件中的值,然后关闭它.
但我得到的只是TypeError: expected a character buffer object.
试图解析y为字符串:
f.write(str(y))
Run Code Online (Sandbox Code Playgroud)
给
IOError: [Errno 0] Error
Run Code Online (Sandbox Code Playgroud) 我不确定这是什么问题。我有一个要过滤的csv文件。我想删除所有以“ @”开头的行以及所有第三列为字符串“ chrM”的行。我基本上将我的代码设置为像这里的答案:
但我收到一个错误。
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)
Run Code Online (Sandbox Code Playgroud)
追溯(最近一次通话最近):outSamCont.write(ProcessLine(line))中文件“ filterMito.py”,第19行,AttributeError:'_csv.writer'对象没有属性'write'
我究竟做错了什么