В Python я хотел бы создать словарь массивов, используя метод словаря get, чтобы по умолчанию предоставить пустой список, чтобы затем заполнить информацией, например ::
dict = {}
for i in range( 0, 10 ):
for j in range( 0, 100 ):
dict[i] = dict.get( i, [] ).append( j )
Однако, когда я пробую приведенный выше код, я не получаю никаких исключений, но мой список заканчивается следующим образом:
AttributeError: объект 'NoneType' не имеет атрибута 'append'
В списках есть метод добавления, поэтому я упростил свой тест до следующего:
dict = {}
for i in range( 0, 10 ):
dict[i] = dict.get( i, [] ).append( i )
И результат был следующий:
{0: нет, 1: нет, 2: нет, 3: нет, 4: нет, 5: нет, 6: нет, 7: нет, 8: нет, 9: нет}
Итак, мой вопрос: почему dict.get (i, []) возвращает None по умолчанию, а не []? Выполнение dict.get (i, list ()) имеет ту же проблему, поэтому я немного озадачен.