Изменение значений при использовании арифметических элементов списка с использованием Python - PullRequest
0 голосов
/ 12 ноября 2018

Во время кодирования я заметил, что значения элементов списка 2D-чисел, которые я использовал, менялись после включения их в деление.

import random

centroids = [[] for _ in range(3)]

maxes = []
mins = []

maxes.append(5)
mins.append(2)
maxes.append(10)
mins.append(4)
maxes.append(20)
mins.append(8)
maxes.append(40)
mins.append(16)

for i in range(0, 4):
    centroids[0].append(round(random.uniform(mins[i], maxes[i]), 4))
    centroids[1].append(centroids[0][i])
    while centroids[1][i] == centroids[0][i]:
        centroids[1][i] = round(random.uniform(mins[i], maxes[i]), 4)

    centroids[2].append(centroids[1][i])
    while centroids[2][i] == centroids[1][i]:
        centroids[2][i] = round(random.uniform(mins[i], maxes[i]), 4)


totals = list(centroids)

totals[0][0] = totals[0][0] + 10
print(totals[0][0])
centroids[0][0] = totals[0][0] / 2
print(totals[0][0])

Пример вывода, который дает печать:

13.7442
6.8721

Проблема в том, что значение итогов [0] [0] изменяется, когда я использую его для вычисления значения центроидов [0] [0].

Я что-то упускаю из виду, почему это происходит?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...