Уведомления

Группа в Telegram: @pythonsu

#1 Авг. 16, 2009 23:07:20

drm
От:
Зарегистрирован: 2008-12-25
Сообщения: 16
Репутация: +  0  -
Профиль   Отправить e-mail  

Добавление поля в .csv

Есть .csv файл, как добавить в него новое поле и установить для него одинаковое значение для всех существующих записей?
То есть имеем:

Поле1, Поле2
1,2
2,3
4,5

А нужно:
Поле1,Поле2,Поле3
1,2,'some'
2,3,'some'
4,5,'some'



Офлайн

#2 Авг. 17, 2009 09:08:09

test157
От:
Зарегистрирован: 2009-02-25
Сообщения: 54
Репутация: +  0  -
Профиль   Отправить e-mail  

Добавление поля в .csv

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

если файл небольшой то можно сделать както так

open('out.csv', 'w').write("\r\n".join(["%s,'some'" % s.rstrip() for s in open('in.csv')]))
(код не проверял но должно работать)

если значения some жолжны быть разными то добавь вместо ‘some’ функцию - которой ты можешь передать текущие значения и она должна возвращать дополнительное значение



Офлайн

#3 Авг. 17, 2009 12:04:29

pasaranax
От:
Зарегистрирован: 2009-06-13
Сообщения: 574
Репутация: +  0  -
Профиль   Отправить e-mail  

Добавление поля в .csv

А CSV module for Python такого не умеет что ли?



Отредактировано (Авг. 17, 2009 12:04:54)

Офлайн

#4 Авг. 17, 2009 19:07:37

Hektor
От:
Зарегистрирован: 2009-08-01
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Добавление поля в .csv

pasaranax
А CSV module for Python такого не умеет что ли?
Насколько я смог разобраться, не умеет. Но даже если бы умел, то было бы реализовано по принципу,указанному гражданином test157



Офлайн

#5 Авг. 17, 2009 21:43:40

drm
От:
Зарегистрирован: 2008-12-25
Сообщения: 16
Репутация: +  0  -
Профиль   Отправить e-mail  

Добавление поля в .csv

test157, спасибо за помощь.



Офлайн

#6 Авг. 18, 2009 06:02:02

test157
От:
Зарегистрирован: 2009-02-25
Сообщения: 54
Репутация: +  0  -
Профиль   Отправить e-mail  

Добавление поля в .csv

за помощь пожалуйста.

а насчет ЦСВ либы, то я пользовался той что включена в сам питон - http://docs.python.org/library/csv.html

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



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version