Добавление в словарь в списке [duplicate]

Вы также можете сделать это, используя функции php array

$csmap_data = array_map(function($arr){
    return $arr + ['flag' => 1];
}, $csmap_data);
23
задан vaultah 17 March 2018 в 16:17
поделиться

2 ответа

Для более общего решения, которое работает независимо от количества измерений, используйте copy.deepcopy():

import copy
b = copy.deepcopy(a)
39
ответ дан Ayman Hourieh 16 August 2018 в 01:19
поделиться
  • 1
    Хотя в большинстве случаев я, вероятно, скажу from copy import deepcopy, поскольку конфликт имен маловероятен, и он выглядит лучше. ;) – Amber 30 March 2010 в 00:18
  • 2
    @Dav, вы действуете правильно. Я предпочитаю всегда импортировать модули, чтобы избежать конфликтов имен вместо обработки функций в каждом конкретном случае. :) – Ayman Hourieh 30 March 2010 в 00:20
  • 3
    @Dav, я не согласен, обычно лучше использовать формат module.function (). – FogleBird 30 March 2010 в 00:28
  • 4
    «Пространства имен - одна хорошая идея - давайте сделаем больше этих!» – Xavier 30 March 2010 в 00:37
  • 5
    Я не вижу там ничего, что действительно применимо здесь - в основном просто утверждение мнения без поддержки, а затем упоминание о потенциальных круговых или задержанных проблемах с импортом, которые не относятся к стандартной библиотеке или, фактически, к большинству модулей. На самом деле, раздел циклических вопросов импорта даже явно отмечает, что проблема не требует использования функции from .. import для манифестации. – Amber 30 March 2010 в 04:34
b = [x[:] for x in a]
37
ответ дан Ignacio Vazquez-Abrams 16 August 2018 в 01:19
поделиться
  • 1
    +1, так как это необходимо. Мне лично нравится избегать копирования / глубокой копии (очень редко для них был реальный вариант использования в реальной жизни, то же самое можно сказать о списке с более чем 2-мя измерениями imo) – ChristopheD 30 March 2010 в 00:16
Другие вопросы по тегам:

Похожие вопросы: