Как записать файлы списков в csv

Я хочу записать файлы списка в файл csv:

a = ['0.18 man::-1_-1king|new\n', '0.19 gif::-2manchester\n', '0.177 united\n']

Как мне это сделать?

Вот мои коды:

import csv

a = ['0.18 king\n', '0.19 manchester\n', '0.177 united\n']

with open("output.csv",'wb') as resultFile: 
    wr = csv.writer(resultFile)
    wr.writerows(a)

Я хотел, чтобы мои результаты были примерно такими:

Column 1    Column 2
0.18            man::-1_-1king|new
0.19            gif::-2manchester
0.177           united

Что ты пробовал?

TDG 10.08.2018 09:19

Посмотрите здесь.

Vasilis G. 10.08.2018 09:21

с open ("output.csv", 'wb') как resultFile: wr = csv.writer (resultFile) wr.writerows (l) это я пробовал, но результаты очень странные

JJson 10.08.2018 09:22

Я попробовал, но в результате получился каждый символ в каждом столбце, а не все слово в одном столбце.

JJson 10.08.2018 09:24

Отредактируйте свой вопрос: добавьте код, который вы пробовали, ожидаемый результат и полученный результат. Так будет легче ответить на вопрос.

TDG 10.08.2018 09:25

извините, я имею в виду wr.writerows (а)

JJson 10.08.2018 09:26

Python 2 или Python 3? Кроме того, как вы ожидаете, что файл csv будет выглядеть? Вы знаете, что в файле будет только один столбец?

Aran-Fey 10.08.2018 09:26

Я использую python 3. Я хотел, чтобы он был как в столбце 1: 0,18 столбец 2: король ...... для каждой строки

JJson 10.08.2018 09:27

Пожалуйста, редактировать ваш ожидаемый результат в вопросе.

Aran-Fey 10.08.2018 09:28

Я редактировал это. Спасибо

JJson 10.08.2018 09:30

@JJson Проверь это

Nihal 10.08.2018 09:33

спасибо, но я не понимаю, как он получает данные2.

JJson 10.08.2018 09:40
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
1
12
34
1

Ответы 1

Если это простой список, как показано в примере, вам не нужно импортировать csv, просто попробуйте это

a = ['0.18 king\n', '0.19 manchester\n', '0.177 united\n']

with open("output.csv",'wb') as fin: 
    for row in a:
        word1, word2 = row.split()
        fin.write('%s,%s\n'%(word1,word2))

a = ['0.18 man::-1king\n', '0.19 gif::-2manchester\n', '0.177 united\n']

with open("output.tsv",'wb') as fin: 
    for row in a:
        word1, word2 = row.split()
        fin.write('%s\t%s\n'%(word1,word2))

Что, если одно из этих слов содержит запятую? Используйте модуль csv для записи файлов csv, черт возьми.

Aran-Fey 10.08.2018 09:47

Да, у меня есть запятые, поэтому почему-то все напечатано по столбцам, но когда у меня есть запятые, это становилось странно. Любая другая альтернатива и спасибо

JJson 10.08.2018 09:48

Я отредактировал и включил еще один новый пример, когда включено что-то вроде запятой.

JJson 10.08.2018 09:53

Что ж, тогда вам, вероятно, придется использовать модуль csv, если вы не в порядке с файлом tsv (файл, разделенный табуляцией), и в этом случае требуется только небольшая модификация

Perseus14 10.08.2018 09:57

можно ли сделать это в файле csv? Я тоже хотел бы узнать, чтобы понять, как это работает

JJson 10.08.2018 09:59

Спасибо, предыдущий работает, но я попробовал еще одну новую проблему. Что делать, если мой список содержит "_"? Я снова редактировал, не могли бы вы взглянуть?

JJson 10.08.2018 10:02

@JJson Я не понимаю, как подчеркивание может вызвать какие-либо проблемы. Если вы хотите быть хитрым, добавьте в свои данные несколько запятых и / или кавычек.

Aran-Fey 10.08.2018 10:04

Я попытался сохранить его в файле csv, но когда он оказался с подчеркиванием. Каким-то образом слова после подчеркивания вставляются в следующий столбец вместо того же столбца

JJson 10.08.2018 10:08

@JJson Значит, что-то не так с программой, которую вы используете для чтения файла csv. Может быть, он думает, что символ подчеркивания - это разделитель.

Aran-Fey 10.08.2018 10:12

Но я использую обычную программу, например Microsoft, чтобы открыть ее в Excel.

JJson 10.08.2018 10:18

@JJson Нет ничего плохого в csv.

Aran-Fey 10.08.2018 10:24

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