import csv MyRow = [] MyList = [] reader = csv.reader(open("data.csv", "rb"), delimiter=';') for x in reader: for y in range(len(x)): value = unicode(x[y], 'cp1251') MyRow.append(value) MyList.append(MyRow) MyRow = []
import csv MyRow = [] MyList = [] reader = csv.reader(open("data.csv", "rb"), delimiter=';') for x in reader: for y in range(len(x)): value = unicode(x[y], 'cp1251') MyRow.append(value) MyList.append(MyRow) MyRow = []
1) open(“data.csv”, “rb”) к csv не имеет прямого отношения, это же стандартная функция питона, открывающая файл, а “rb” - это режим чтения бинарных файлов.А, вон оно что! А то я в спешке копипастнул код из примера, а там оказывается стандартная функция встроилась.
import csv reader = csv.reader(open("data.csv", "rb"), delimiter=';') MyList = [map(lambda x: unicode(x, 'cp1251'), x) for x in reader]
MyList = map(lambda x: map(lambda y: unicode(y, 'cp1251'), x), reader)
r = csv.reader(codecs.open(filename “rb”, “cp1251”), delimiter=',')Вот это очень кстати, не знал. Декодирование на лету полезная штука.
Teddy BearВот здесь есть пара примеров использования.
А с лямбдой тоже интересно, хотя я её еще не успел освоить.