Создайте CSV-файл со значениями из списка Python

Вы также можете использовать метод compareTo() для сравнения двух строк. Если результат compareTo равен 0, то две строки равны, в противном случае сравниваемые строки не равны.

== сравнивает ссылки и не сравнивает фактические строки. Если вы создали каждую строку, используя new String(somestring).intern(), вы можете использовать оператор == для сравнения двух строк, в противном случае могут использоваться только методы equals () или compareTo.

142
задан Austin Cummings 17 March 2014 в 21:48
поделиться

4 ответа

import csv

with open(..., 'wb') as myfile:
    wr = csv.writer(myfile, quoting=csv.QUOTE_ALL)
    wr.writerow(mylist)

Edit: это работает только с питоном 2.x.

Чтобы заставить его работать с питоном 3.x замените wb на w ( смотрите этот SO ответ)

with open(..., 'w', newline='') as myfile:
     wr = csv.writer(myfile, quoting=csv.QUOTE_ALL)
     wr.writerow(mylist)
217
ответ дан 23 November 2019 в 22:08
поделиться

, Чтобы создать и записать в файл CSV

ниже примера демонстрируют создание и запись файла CSV. для создания динамического устройства записи файла, мы должны импортировать пакет csv импорта, затем должны создать экземпляр файла со ссылкой на файл Исключая:- с открытым ("D:\sample.csv", "w", новая строка = "") как file_writer

здесь, если файл не будет существовать с упомянутым каталогом файла затем, то Python создаст тот же файл в указанном каталоге, и "w" представляет запись, если Вы хотите читать, файл затем заменяют "w" "r" или добавлять в существующий файл затем "a". новая строка = "" указывает, что удаляет дополнительную пустую строку в течение каждого раза, когда Вы создаете строку так для устранения пустой строки, мы используем новую строку = "", создайте некоторые имена полей (имена столбцов) с помощью списка как поля = ["Имена", "Возраст", "Класс"] , затем обратитесь к экземпляру устройства записи как writer=csv. DictWriter (file_writer, fieldnames=fields) здесь использующий писатель Словаря и присваивающий имена столбцов, для записи имена столбцов в csv, который мы используем writer.writeheader () и записать значения, которые мы используем writer.writerow ({"Имена": "John", "Возраст":20 ", Класс": "12 А"}) , при записи значений файла должен быть передан с помощью метода словаря, здесь ключ является именем столбца, и значение является соответствующим значением ключа

import csv 

with open("D:\\sample.csv","w",newline="") as file_writer:

   fields=["Names","Age","Class"]

   writer=csv.DictWriter(file_writer,fieldnames=fields)

   writer.writeheader()

   writer.writerow({"Names":"John","Age":21,"Class":"12A"})
2
ответ дан 23 November 2019 в 22:08
поделиться

Вы можете использовать метод String.join в этом случае.

Разделить на несколько строк для ясности - вот интерактивная сессия

>>> a = ['a','b','c']
>>> first = '", "'.join(a)
>>> second = '"%s"' % first
>>> print second
"a", "b", "c"

или как одна строка

>>> print ('"%s"') % '", "'.join(a)
"a", "b", "c"

Однако у вас может быть проблема в том, что ваши строки были встроенные кавычки. Если это так, вам нужно решить, как их избежать.

Модуль модуль CSV может позаботиться обо всем этом для вас, позволяя вам выбирать между различными вариантами цитирования (все поля, только поля с кавычками и сестераторами, только не цифровые поля и т. Д.) К операциям управления ESACPE (двойные кавычки или сбежавшие строки). Если ваши значения просты, String.join, вероятно, будет в порядке, но если вам нужно управлять множеством краевых чехлов, используйте доступный модуль.

7
ответ дан 23 November 2019 в 22:08
поделиться

Используйте модуль питона csv для чтения и записи файлов, разделенных запятыми или табуляциями. Модуль csv предпочтительнее, так как он дает хороший контроль над цитированием.

Например, вот рабочий пример для вас:

import csv
data = ["value %d" % i for i in range(1,4)]

out = csv.writer(open("myfile.csv","w"), delimiter=',',quoting=csv.QUOTE_ALL)
out.writerow(data)

Производит:

"value 1","value 2","value 3"
12
ответ дан 23 November 2019 в 22:08
поделиться
Другие вопросы по тегам:

Похожие вопросы: