Найти - Пользователи
Полная версия: Запись в CSV
Начало » Python для новичков » Запись в CSV
1 2 3
Olyaleo
Помогите, пожалуйста. Мне надо полученные данные записать в один файл CSV, в отдельные столбцы, у меня не выходит. Мой код:
#!/usr/bin/env python
# -*- coding: utf-8 -*-

import csv

result=[]
result1=[]
result2=[]
data = open('Input.csv', 'r')
for string in data.readlines():
step = 28
it = (string[i:i+step]
for i in xrange(len(string)-step))
open('Output1.csv', 'w').writelines([str(y)+'\n' for y in list(it)])
f=open('Output1.csv', 'r')

for string in f.readlines():
rows = string.split(',')[0].strip()
e=rows[0:7]
k=rows[7:19]
s=rows[19:]
result+=[e]
result1+=[k]
result2+=[s]
writer =open('outup.csv','w')
for rows in result,result1, result2:
rows = writer.writerows(row(y)+'\n'" "+row(x)+'\n'" "+row(z)+'\n' for y in result for x in result1 for z in result2)


# open('Output1.csv', 'w').writelines([str(y)+'\n'" "+str(x)+'\n'" "+str(z)+'\n' for y in result for x in result1 for z in result2])
#open('Output1.csv', 'w').writelines([+str(y)+'\n' for y in result])
#open('Output1.csv', 'a').writelines([+str(y)+'\n' for y in result1])
#open('Output1.csv', 'a').writelines([+str(y)+'\n' for y in result2])
UsCr
А что не выходит? Ошибка какая?
Ed
Вы не используете функционал модуля csv. Того, что вы его проимпортировали, недостаточно. Пишите, читайте, используя методы оттуда и все у вас получится.
apologize828
может тут найдете ответ:
http://docs.python.org/library/csv.html
igor.kaist
Olyaleo
writer.writerows
неужели ошибки никакой не выходит? :)
Ed +1 :)
Olyaleo
igor.kaist
неужели ошибки никакой не выходит?
Конечно, выходит. Только мне от этого легче не становится, все равно скрипт не работает. По совету
Ed
Вы не используете функционал модуля csv. Того, что вы его проимпортировали, недостаточно. Пишите, читайте, используя методы оттуда и все у вас получится.
буду пытаться что-то сделать, но пока для меня это темный лес.
Ed
Olyaleo
Ed
Пишите, читайте, используя методы оттуда и все у вас получится.
буду пытаться что-то сделать, но пока для меня это темный лес.
Тогда задавайте вопросы, что ли. По-моему там все просто. Хотите писать в csv - используйте то, что есть в модуле csv.
Olyaleo
хорошо, попробую задать вопрос:
1)
Ed
Того, что вы его проимпортировали, недостаточно.
А что надо еще сделать, чтобы это было достаточным? Как записать по столбцам полученные значения я знаю, но они записываются в одну колонку таблицы excel, а я хочу сделать так, чтобы каждый столбец записывался в отдельную колонку.
2) возможно ли, записать все полученные данные в считываемый файл Input.csv ?
3) используя модуль join, я добавиа столбцы со значениями

open('Out.csv', 'w').write("\r\n".join(["%s, 'result', 'result1', 'result2'" % s.rstrip() for s in open('Output1.csv')]))
в результате у меня создается новая таблица с 4 столбцами, 1 из таблицы Output1.csv и 3 то что я присоединила, но там прописаны слова ‘result’, ‘result1’, ‘result2’, а не полученные данные работы скрипта. А можно ли используя этот модуль, добавить именно результаты ‘result’, ‘result1’, ‘result2’?
Ed
Нужно использовать функционал оттуда, я уже писал.
Для начала попробуйте прочитать input.csv. В вашем коде используется readlines, то есть построчное чтение файла. А вы попробуйте использовать csv.reader. Описание и пример здесь: http://docs.python.org/library/csv.html
Результат несите сюда.
Olyaleo
Вот попробовала прочитать что файл input.csv, и снова ничего не выходит, выдает ошибку:
Traceback (most recent call last):
File "1.py", line 7, in <module>
for lines in data:
_csv.Error: new-line character seen in unquoted field - do you need to open the file in universal-newline mode?
#!/usr/bin/env python
# -*- coding: utf-8 -*-

import csv

data = csv.reader(open('Input.csv', 'r'), delimiter=',', quotechar='|')
for lines in data:
step = 28
it = (line[i:i+step]
for i in xrange((line)-step))
op = csv.writer(open('Output1.csv', 'w'))
writer.writerows (list(it))
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB