Я использую python 2.7.6. Я хотел бы преобразовать свой список объектов в формат csv. У меня есть список объектов cdr, этот объект содержит некоторый объект string, int и datatime.конвертировать список объектов данных в csv
class cdr():
def __init__(self):
# some init
def __iter__(self):
return iter(self.name, self.my_value,self.my_datetime)
#from another class
import csv
def make_csv(self, cdr_list):
with open(self.file_name, 'wb') as csv_file:
wr = csv.writer(csv_file, delimiter=",")
for cdr in cdr_list:
wr.writerow(cdr)
Но я получаю пустой csv. Спасибо за помощь.
https://docs.python.org/3/library/pickle.html - это путь, по которому нужно перебирать атрибуты, а затем записывать в CSV. –
Вы сначала попробовали простой список вместо класса cdr? функция __iter__ здесь неправильна (неправильно использовать ifer()), если она действительно запущена, вы должны иметь исключение, вместо молчащего пустого – tdihp
Функция 'iter()' возвращает итерируемый объект. Вы должны использовать '.next()' для перебора или использования функции 'list()', чтобы преобразовать ее в список ... например 'wr.writerow (list (cdr))' –