我需要再次幫助。問題是,當我調用一個應該添加到變量的函數時,變量保持其原始值。變量保持其值
代碼:
import random
def christncombat(x,y,z):
x += 1
if x > 26:
x = 1
y += 1
if y > 26:
y = 1
z += 1
if z > 26:
z = 1
x = 1
y = 1
encrypt = {65:90, 66:90, 67:72, 68:78, 69:77, 70:83, 71:87, 72:67, 73:73, 74:89, 75:84,
76:81, 77:69, 78:68, 79:79, 80:66, 81:76, 82:82, 83:70, 84:75, 85:85, 86:86,
87:71, 88:88, 89:74, 90:65}
encrypted = []
r1 = random.randint(1,26)
r2 = random.randint(1,26)
r3 = random.randint(1,26)
security = str(r1) + "a" + "-" + str(r2) + "b" + "-" + str(r3) + "c"
input_en = input("Zadejte text, ktery chcete zasifrovat (pouzivejte velka pismena): ")
for i in range(0,len(input_en)):
coded = input_en[i]
coded = ord(coded)
coded = encrypt[coded]
full = r1 + r2 + r3
coded += full
while(coded > 90):
rekt = coded - 90
coded = 65 + rekt
christncombat(r1,r2,r3)
full1 = r1 + r2 + r3
coded += full1
while(coded > 90):
rekt = coded - 90
coded = 65 + rekt
done = chr(coded)
encrypted.append(done)
print(encrypted)
print("Bezpecnostni kod je",security)
雖然這個問題可能是這一部分:
def christncombat(x,y,z):
x += 1
if x > 26:
x = 1
y += 1
if y > 26:
y = 1
z += 1
if z > 26:
z = 1
x = 1
y = 1
逗留你的意思是「可變停留在其原始價值」。什麼變量?有什麼價值? – Carcigenicate
你能具體描述你的問題嗎? – pvg
你的'christncombat'函數只修改本地'x,y,z',它對你傳遞給它的任何東西都沒有影響。 –