Большинство 'pythonic' способ записать список в .xls-файл?

the_list = [['a','b','c'],['b','c','d'],['c','d','e']] output = [] for k in the_list: output.append(str(k)[1:-1].replace(',',"\t").replace("'",'').replace(' ','')) print output #['a\tb\tc', 'b\tc\td', 'c\td\te'] #for line in output: #out_file.write(line + '\n') 

Я пытаюсь получить список в формате с разделителями табуляции, чтобы я мог писать в .xls-файл, но единственный способ узнать, как это сделать, казался довольно монотонным. Мне было интересно, знает ли кто-нибудь более быстрый, более эффективный и более «питонический» способ записи списка в .xls

4 Solutions collect form web for “Большинство 'pythonic' способ записать список в .xls-файл?”

Вы можете выполнить форматирование, которое вы ищете, со списком

 output = ["\t".join(a) for a in the_list] 

См. Документацию по подключению для python.

Используйте встроенную библиотеку csv . http://docs.python.org/2/library/csv.html

Предполагая, что out_file уже открыт, как и в закомментированных частях вашего примера:

 output_writer = csv.writer(out_file, delimiter="\t") output_writer.writerows(the_list) 

Чтобы быть немного педантичным, вы пытаетесь написать файл с разделителями табуляции, а не фактический Excel. Excel может обрабатывать файлы с разделителями табуляции просто отлично, но если вам нужен истинный Excel xlwt это обычная библиотека. Используя его, у вас будет что-то вроде этого:

 wb = xlwt.Workbook() ws = wb.add_sheet('sheet_name') for rownum, sublist in enumerate(the_list): for colnum, value in enumerate(sublist): ws.write(rownum, colnum, value) wb.save(out_file) 

Если вам нужно писать в XLS, я бы воспользовался приведенными здесь ответами:

Python – запись в таблицу Excel

При использовании переменных с разделителями разделов или csv часто будут работать, ожидайте сбой, если вам нужен UTF-8. Вы не увидите персонажей, которые вы ожидаете, когда вы выйдете из диапазона ASCII.

Я не пробовал настоящие продукты Excel, упомянутые в ссылках saxman01, но они могут быть более подходящими, если целью является действительно Excel. Будут ли они обрабатывать другие наборы символов? Просто подумать о том, нужно ли вам переходить на международную (или даже на внутреннюю аудиторию, не говорящую по-английски).

Тогда вы могли бы спросить себя, что бы сделали Документы Google?

  • Чтение / разбор файлов Excel (xls) с помощью Python
  •  
    Interesting Posts for Van-Lav
    Python - лучший язык программирования в мире.