Зачем пропускать строку при записи в CSV-файл с использованием Python 3.6.4?

У меня есть эта простая программа на Python 3.6.4 для записи данных в CSV-файл, когда я открываю файл test.csv с помощью Excel 2010, я нашел результат, написанный следующим образом:

это программа:

import csv   
lol = [(1,2,3),(4,5,6),(7,8,9)]
item_length = len(lol[0])

with open('test.csv', 'w') as test_file:
  file_writer = csv.writer(test_file)
  for i in range(item_length):
    file_writer.writerow([x[i] for x in lol])

2 ответа

Решение

Добавлять newline='' к open() параметры, чтобы предотвратить это

with open('test.csv', 'w', newline='') as test_file:
    file_writer = csv.writer(test_file)
    for i in range(item_length):
        file_writer.writerow([x[i] for x in lol])

Решение состоит в том, чтобы указать параметр "lineterminator" в конструкторе

Другие вопросы по тегам