我有不同的文本文件,我想從那裏提取值到一個csv文件。 每個文件的格式如下將文本文件提取到python中的多列
main cost: 30
additional cost: 5
我能夠做到這一點,但問題是我希望它的每個文件的值插入到一個不同的列我也想文本文件的數量是用戶爭論
這是我現在在做什麼
numFiles = sys.argv[1]
d = [[] for x in xrange(numFiles+1)]
for i in range(numFiles):
filename = 'mytext' + str(i) + '.text'
with open(filename, 'r') as in_file:
for line in in_file:
items = line.split(' : ')
num = items[1].split('\n')
if i ==0:
d[i].append(items[0])
d[i+1].append(num[0])
grouped = itertools.izip(*d[i] * 1)
if i == 0:
grouped1 = itertools.izip(*d[i+1] * 1)
with open(outFilename, 'w') as out_file:
writer = csv.writer(out_file)
for j in range(numFiles):
for val in itertools.izip(d[j]):
writer.writerow(val)
這就是我現在得到,一切都在一列
main cost
additional cost
30
5
40
10
,我想這是
main cost | 30 | 40
additional cost | 5 | 10
你試圖使用的元組? –
最後一列來自期望輸出的位置?每個輸入文件中只有兩行? – wwii
我假設輸入文件看起來像: 主要成本:30 額外費用:5 主要成本:40 額外費用:10個 – Michael