>>> def get_product(temp_pnr):
... for i in range(0, len(temp_pnr), 2):
... temp_pnr[i] = temp_pnr[i] * 2
...
>>> def sum_nums(temp_pnr):
... sum = 0
... for i in range(len(temp_pnr)):
... sum = sum + (temp_pnr[i]//10) + (temp_pnr[i]%10)
... return sum
...
>>> def check_cnr(sum):
... big_num = ((sum//10) +1) * 10
... cnr = (big_num - sum) % 10
... return cnr
...
>>> def check_pnr(pnr):
... controlnr = pnr[9]
... temp_pnr = pnr
... temp_pnr.pop(9)
... print(pnr)
... get_product(temp_pnr)
... print(pnr)
... return controlnr == check_cnr(sum_nums(temp_pnr))
...
>>> check_pnr([9, 5, 0, 9, 0, 8, 5, 5, 5, 2])
[9, 5, 0, 9, 0, 8, 5, 5, 5]
[18, 5, 0, 9, 0, 8, 10, 5, 10]
True
User gives a list "pnr" in the function check_pnr(pnr)
I save "pnr" in "temp_pnr" because I need to save "pnr" as it is
Then I call upon the "get_product(temp_pnr)" which alters "temp_pnr"
However, when checking the list "pnr " before and after calling "get_product(temp_pnr)" it differs
Why does it change even though I never use pnr in the function "get_product(temp_pnr)"?