我有一个文件,如下所示:
10030004
10300048
10919013
这是一个txt
文件,其中包含数据,每一行都是新的观察值。该文件附带一个文档,例如:
变量:A开始:1长度:3
变量:B开始:4长度:2
变量:C开始:6长度:3
我想包括定界符来区分不同的变量。此外,我想包含一个标题。假设我想使用,
作为分隔符。有人知道如何进行吗?
好的,为了完整性:
inpath = 'test.txt'
outpath = 'output.txt'
head = "A,B,C"
Astart = 1
Alength = 3
Bstart = 4
Blength = 2
Cstart = 6
Clength = 3
with open(inpath, 'r') as input_f:
with open(outpath, 'w') as output_f:
print(head, file = output_f)
for line in input_f:
print(line[Astart-1:Astart-1+Alength]+','+line[Bstart-1:Bstart-1+Blength]+','+line[Cstart-1:Cstart-1+Clength], file = output_f)
感谢到目前为止为我提供帮助的所有人。
答案 0 :(得分:0)
尝试如下切片:
a ='10030004'
打印a [Astart-1:Astart-1 + Alength] +','+ a [Bstart-1:Bstart-1 + Blength] +','+ a [Cstart-1:Cstart-1 + Clength]
根据您的情况:
Astart = 1,长度= 3,Bstart = 4,Blength = 2,Cstart = 6,Clength = 3
答案 1 :(得分:0)
如果您希望通过某些定界符(,)分隔每一行(因为每一行都有一个变量),请使用此符号。
with open('input.txt', 'r') as input_f:
with open('output.txt', 'w') as output_f:
for line in input_f:
line = line.rstrip('\n') + ','
print(line, file=output_f)