2015-06-23 1 views
2

Моего входа большой файл CSV со строками, как:Как удалить символы новой строки между строк, не удаляя новую строку из конца строки python?

"7807371008","Sat Jan 16 00:07:46 +0000 2010","@bigg_robb welcome to the party life of politics","T 33.417474,-86.705343","al","23845121","1381","502","Wed Mar 11 22:38:27 +0000 2009","2468" 

Моего желаемый результат представляет собой новый файл с первыми и 3 столбцами только все специальные символы удалены:

7807371008, bigg robb welcome to the party life of politics 

Но есть некоторые линии, в которых символы новой строки находятся между текстом, хотя это не является техническим окончанием этой строки. В таких случаях, я получаю сообщение об ошибке:

IndexError: list index out of range 

Примером таких строк:

"7807376607","Sat Jan 16 00:07:57 +0000 2010","RT @CBS8News:The commander of Gov. Riley's task 
force on illegal gambling resigns after winning $2,300 at a MS casino. 
gt;#conflictofinterest","Montgomery, Alabama","al","33358058","84","164","Mon Apr 20 00:48:37 +0000 2009","4509" 

Мой код:

import csv 
import sys 
import re 

with open('al.csv') as f: 
    for line in f: 

     j = next(csv.reader([line])) 
     id1 = j[0] 
     id2 = re.sub('[^A-Za-z0-9\.]+',' ',id1) 
     tt1 = j[2] 
     tt2 = re.sub('[^A-Za-z0-9\.]+',' ',tt1) 
     print id2.strip()+", "+tt2.lower() 

Как решить эту проблему? Пожалуйста помоги.

ответ

1

Вы должны указан запятая , как ваш файл CSV разделитель (или правильный разделитель, основанный на файл) также CSV объект читателя не имеет строки, которые вы перебираете, что вам нужно, чтобы получить доступ к строкам, обернув над reader объектом (spamreader):

>>> import csv 
>>> with open('al.csv', 'rb') as csvfile: 
...  spamreader = csv.reader(csvfile, delimiter=',') 
...  for row in spamreader: 
      print re.sub('[^A-Za-z0-9\.]+',' ',row[2]) + row[0] 
+0

вы просто сказал 'delimiter' должно быть,' ... или я неправильно понять тебя? –

+0

Большое спасибо @ Kasra !! – user3292085

+0

@ KhalilAmmour- خليلعمور Не только это! на самом деле я жду ответа OP, потому что это больше зависит от структуры файла! – Kasramvd

Смежные вопросы