Как можно изменить массив "A", чтобы не изменилась его копия "B"?

Как можно изменить "A", чтобы не изменилась "B"?

import random

B = random.sample(range(-100,100),8)
A = B


for i in range (8):
    if A[i] < 0:
        A[i] = 0

print(B)
print(A)

Ответы (3 шт):

Автор решения: Tamada

Чтобы у Вас не менялась переменная B, сделайте следующее:

A = B.copy()
→ Ссылка
Автор решения: Nickolay Chistov

Еще есть такой способ:

A = B[:]

Я всегда использовал это. Про copy() слышал, но не пользовался.

→ Ссылка
Автор решения: wchistow

Ещё пара способов скопировать список:

  1. Использовать list:

    A = list(B)
    
  2. ❗ Никогда не используйте этот способ в "настоящем" коде ❗

    С использованием eval и repr:

    A = eval(repr(B))
    
→ Ссылка