Добавление повторяющихся данных в строку - Python
Формулировка задачи:
пример данных:
я написал скрипт, выбирающий по первому полю уникальные строки, чтобы очистить дубликаты. Но, т.к. данные в полях дата1-3 не повторяются. надо сделать в результате:
Мой код тут: Убрать лишний перенос при сохранении .csv
Как добавить новые данные в строку?
id, Name, mail, data1, data2, data3
1, Ivan, mail@ru, abc, 14, de
1, Ivan, mail@ru, fgh, 25, kl
1, Ivan, mail@ru, mno, 38, pq
2, Alex, mail@ru, abc, 14, d
1, Ivan, mail@ru, "abc, 14, de, fgh, 25, kl, mno, 38, pq"
2, Alex, mail@ru, "abc, 14, d"
Решение задачи: «Добавление повторяющихся данных в строку»
textual
Листинг программы
# только для того, чтобы строки выводились в том же порядке, # что и в входных данных, если это не важно, то использовать # обычный словарь from collections import OrderedDict DATA = """id, Name, mail, data1, data2, data3 1, Ivan, mail@ru, abc, 14, de 1, Ivan, mail@ru, fgh, 25, kl 1, Ivan, mail@ru, mno, 38, pq 2, Alex, mail@ru, abc, 14, d""" def parse(data): result = OrderedDict() for row in data: id_, name, mail, *data = map(str.strip, row.split(",")) if id_ not in result: result[id_] = [name, mail] result[id_].extend(data) return result result = parse(DATA.splitlines()) for id_, data in result.items(): print(id_, ", ".join(data))
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д