我試圖解決以下問題:爲什麼python創建一個變量指向另一個變量?
假設感染一所大學的數據庫和改變學生的AR (教務處)的病毒。經過一段時間後,已經發現由病毒產生的AR(ARV = x1 x2 x3 x4 x5 x6 x7 x8 x9) 正確的AR(ARC = y1 y2 y3 y4 y5 y6 y7 y8 y9)可以獲得 通過以下操作:
Y1 = X1,Y2 = X2,Y3 = X8,Y4 = X7,Y5 = X5,Y6 = 5233,Y7 = X3,Y8 = X4,Y9 = X9
例如,ARV = 197845602 - > ARC = 190645782
製作一個讀取ARV並給出ARC的程序。
我的代碼如下所示:
pt = input('Type the AR affected by the virus: ')
arv = list(pt)
arc = arv
arc[2] = arv[7]
arc[3] = arv[6]
arc[6] = arv[2]
arc[7] = arv[3]
jarc = ''.join(arc)
print('\nCorrect AR:',jarc)
當您運行的代碼,你看到生成的ARC它不是上面的例子中的ARC。爲什麼?我找到了。 「arv」隨着「弧」而改變,它應該保持不變。
對我來說似乎是python創建了一個變量「arc」到「arv」的指針。任何人都可以解釋爲什麼發生這種情況?我該如何正確解決問題?
這是一個學校作業嗎? – Olian04
因爲在Python中賦值不會複製任何東西。 – BrenBarn
它的一個大學作業@ Olian04 – Nelthar