Сначала стало полезно различать различные типы IP vpn на основе административных отношений, а не технологии, соединяющих узлы. Как только отношения будут определены, в зависимости от требований, таких как безопасность и качество обслуживания, могут использоваться различные технологии.
Прежде всего, я бы нигде не использовал s2
. Потому что это трудно читать. Код Python должен быть читабельным.
И когда дело доходит до s1
и s
, они как бы разные. copy
Функция использует ту же ссылку на объект со значениями вашего исходного объекта. Поэтому после применения решения s
, если вы внесете изменения в словари в users
, вы увидите свои изменения в s
. Но если вы используете s1
, потому что новые объекты создаются, изменения не произойдут в s1
.
for k,v in obj.items(): v.pop('args', None)
будет мутировать субдикты в исходной структуре. Даже если производительность не должна беспокоить вас, пока вы не столкнетесь с проблемами производительности, но в любом случае, рассматривая третий как базовый:
deepcopy
на величину медленнее 3-го