Слияние значений столбцов в один столбец без запятой на питоне (без панд) - PullRequest
0 голосов
/ 31 мая 2018

Вопрос о том, как объединить различные значения столбцов в out без запятой на python ...

Моя задача такова.

Данные большого файла csv имеют следующие строки

s,0,6,8,9,2,-,3,6,2,8,7,1,0,n,.,c,s,v
s,0,5,9,6,0,-,3,6,7,0,1,6,0,n,.,c,s,v
s,1,9,0,5,5,-,3,6,1,5,5,8,6,n,.,c,s,v
s,2,8,0,7,9,-,3,2,5,1,8,2,7,n,.,c,s,v
s,0,0,5,6,5,-,3,3,4,0,5,7,0,n,.,c,s,v
s,3,0,3,4,8,-,3,5,9,1,2,2,6,n,.,c,s,v
s,0,3,8,8,9,-,3,7,3,1,0,2,5,n,.,c,s,v

Я хочу, чтобы это выглядело следующим образом:

06892
05960
19055
28079
00565
30348
03889

Я попытался выполнить код безуспешно.

import csv, os

with open ('/Desktop/case.csv','r') as h:
    reader = csv.reader(h)
    for row in reader:
        k = row[1:6]
        print(k)

Когда я это сделал, появляются следующие результаты.

0,6,8,9,2
0,5,9,6,0
1,9,0,5,5
2,8,0,7,9
0,0,5,6,5
3,0,3,4,8
0,3,8,8,9

Как сделать, чтобы это выглядело как мой желаемый вывод, т.е. без запятых?

1 Ответ

0 голосов
/ 31 мая 2018

Использование join:

from io import StringIO
import csv
txtfile = StringIO("""s,0,6,8,9,2,-,3,6,2,8,7,1,0,n,.,c,s,v
s,0,5,9,6,0,-,3,6,7,0,1,6,0,n,.,c,s,v
s,1,9,0,5,5,-,3,6,1,5,5,8,6,n,.,c,s,v
s,2,8,0,7,9,-,3,2,5,1,8,2,7,n,.,c,s,v
s,0,0,5,6,5,-,3,3,4,0,5,7,0,n,.,c,s,v
s,3,0,3,4,8,-,3,5,9,1,2,2,6,n,.,c,s,v
s,0,3,8,8,9,-,3,7,3,1,0,2,5,n,.,c,s,v""")

reader = csv.reader(txtfile) 
for row in reader: 
        k = row[1:6] 
        print(''.join(k))

Вывод:

06892
05960
19055
28079
00565
30348
03889
...