Inicializar matriz de outra matriz

RA:

como posso fazer isso da maneira correta?

a = ['1','2']
b = []
for value in a:
    b.append(value)

Eu preciso fazer isso porque eu quero mudar valores em um, mas eu quero mantê-los em b. Quando eu faço b = aparece apenas definir ponteiros para os valores em um.

Verde Manto Guy:

referência duplicado (apontando para a mesma lista):

b = a

cópia eletrônica (todos os mesmos elementos, mas uma lista diferente):

b = a[:]      # special version of the slice notation that produces a softcopy
b = list(a)   # the list() constructor takes an iterable. It can create a new list from an existing list
b = a.copy()  # the built-in collections classes have this method that produces a soft copy

Para obter uma cópia profunda (cópias de todos os elementos, em vez de apenas os mesmos elementos) que você gostaria de invocar o built-in copymódulo .:

from copy import deepcopy

b = deepcopy(a)

Acho que você gosta

Origin http://10.200.1.11:23101/article/api/json?id=392103&siteId=1
Recomendado
Clasificación