Я обрабатываю CSV файл и подсчитываю уникальные значения столбца 4. До сих пор я кодировал эти три способа. Один использует "если ключ в словаре", второй ловушки KeyError, а третий использует "DefaultDictionary". Например (где x [3] - это значение из файла, а "a" - словарь):
Первый способ:
if x[3] in a:
a[x[3]] += 1
else:
a[x[3]] = 1
Второй способ:
try:
b[x[3]] += 1
except KeyError:
b[x[3]] = 1
Третий способ:
from collections import defaultdict
c = defaultdict(int)
c[x[3]] += 1
Мой вопрос: какой способ более эффективен... чище... лучше... и т.д. Или есть лучший способ. Оба способа работают и дают один и тот же ответ, но я думал, что я буду использовать ум улья в качестве учебного примера.
Спасибо -