Уведомления

Группа в Telegram: @pythonsu

#1 Июнь 19, 2015 15:53:52

asphix
Зарегистрирован: 2012-05-17
Сообщения: 37
Репутация: +  0  -
Профиль   Отправить e-mail  

Задачка №2

Решение из соседнего треда идеально работает, спасибо.

import collections
import csv
a = collections.defaultdict(set)
with open('test.txt', 'rb') as f:
    for i, j in csv.reader(f, delimiter=';'):
        a[i].update([j])
for i in a:
    a[i] = len(a[i])
print a

А как бы так сделать, чтобы подсчитывались не только уникальные номера, а вообще всё что есть?

Офлайн

#2 Июнь 19, 2015 15:57:37

terabayt
От: Киев
Зарегистрирован: 2011-11-26
Сообщения: 1099
Репутация: +  103  -
Профиль   Отправить e-mail  

Задачка №2

не совсем понятно
пример



————————————————
-*- Simple is better than complex -*-

Офлайн

#3 Июнь 19, 2015 16:05:03

asphix
Зарегистрирован: 2012-05-17
Сообщения: 37
Репутация: +  0  -
Профиль   Отправить e-mail  

Задачка №2

Есть csv с данными вида
gorod1;89112345687
gorod2;89212546873
gorod3;89607988762
gorod1;89112345687
gorod2;89130546873

После обработки необходимо получить словарь по городам, с подсчитанным кол-вом всех номеров.

Например:
gorod1;2
gorod2;2
gorod3;1

Офлайн

#4 Июнь 19, 2015 16:07:50

terabayt
От: Киев
Зарегистрирован: 2011-11-26
Сообщения: 1099
Репутация: +  103  -
Профиль   Отправить e-mail  

Задачка №2

import collections
import csv
a = collections.defaultdict(int)
with open('test.txt', 'rb') as f:
    for i, j in csv.reader(f, delimiter=';'):
        a[i] += 1
print a



————————————————
-*- Simple is better than complex -*-

Офлайн

#5 Июнь 19, 2015 16:28:20

asphix
Зарегистрирован: 2012-05-17
Сообщения: 37
Репутация: +  0  -
Профиль   Отправить e-mail  

Задачка №2

Огромное спасибо! Вопрос закрыт

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version