2013-05-14 5 views
-1

я пытаюсь прочитать файл CSV в Python, используя следующий код:Чтение файла в вопросах питона

with open(self.fileName, 'r') as openFile: 
      dataReading = openFile.read() 
     openFile.close() 
     splitData = dataReading.split("\n") 
     print splitDat 

Я не понимаю, почему я не получаю никакого вывода.

self.fileName предназначен для представления местоположения файла на компьютере, и я пытаюсь его открыть и разбить на новые линии. Может кто-нибудь, пожалуйста, помогите мне с проблемой?

+6

Одна вещь, если вы используете 'with', вам не нужно явно закрывать файл после выхода из этого блока. – BlackVegetable

+3

Что такое 'read_data'? Почему вы закрываете файл, когда 'with' делает это для вас? – thegrinner

+2

Используйте модуль 'csv' для чтения CSV-файлов. – geoffspear

ответ

0

Вы сохраняете линию чтения в dataReading и затем делать read_data.split()

Вы могли бы намереваясь сделать это:

def convert(self): 
     dataReading = [] 
     with open(self.fileName, 'r') as openFile: 
      dataReading = openFile.readlines() 
     for data in dataReading: 
      print data 
+0

Извините, это было ошибкой при копировании, поскольку я изменил имена переменных для более легкого чтения. Несмотря на это, я до сих пор не получил вывода – ReallyGoodPie

+0

«Легкое чтение» - это когда ваш код соответствует [Руководству по стилю для кода Python] (http://www.python.org/dev/peps/pep-0008/). – Matthias

0

Не знаю, почему вы распределяете на символ новой строки, но код ниже следует читать в вашем файле и печатать строки за строкой (после разделения на новый символ строки).

with open(self.fileName, 'r') as openFile: 
    for line in openFile: 
     l_split = line.split('\n') 
     print l_split 
Смежные вопросы