可能重复:
在 Python 中解析固定宽度文件的有效方法
甚至不确定“空格分隔”是否真的是正确的术语(这可能是阻碍我搜索工作的原因)。基本上,字段 X 从字符 0 开始,字段 Y 从字符 30 开始。很确定这是我们的一个系统仍在使用的古老文件格式。我可以轻松推出自己的解决方案,但如果存在,我宁愿使用现有的库。
可能重复:
在 Python 中解析固定宽度文件的有效方法
甚至不确定“空格分隔”是否真的是正确的术语(这可能是阻碍我搜索工作的原因)。基本上,字段 X 从字符 0 开始,字段 Y 从字符 30 开始。很确定这是我们的一个系统仍在使用的古老文件格式。我可以轻松推出自己的解决方案,但如果存在,我宁愿使用现有的库。
这个问题看起来和你的很相似。看起来他们对哪些模块最有用有一些建议:
with open('myfile.txt') as f:
for line in f.readlines():
x, y = line[:28], line[29:]
x, y
应该将每行的参数分开。
子类csv.Dialect如下:
import csv
class SpaceCsv(csv.Dialect):
"csv format for exporting tables"
delimiter = None
doublequote = True
escapechar = None
lineterminator = '\n'
quotechar = '"'
skipinitialspace = True
quoting = csv.QUOTE_MINIMAL
csv.register_dialect('space', SpaceCsv)
然后将其用作csv.reader(filename, dialect="space")
. 让我知道你是怎么办的...