首页 > 解决方案 > 像 python 脚本这样的谜不会返回任何东西

问题描述

我正在尝试以与 enigma 机器类似的方式制作加密器,但我没有尝试,变量“final_message”除了空格不会打印任何内容

message = input("Please input a message. ").upper()
final_message = ""
shift = 0

rotor1 = ['D','M','T','W','S','I','L','R','U','Y','O',
'N','K','F','E','J','C','A','Z','B','P','G','X','O','H','V']

for i in range(len(message)):
  if ord(message[i]) == 32:
    final_message += "n"
  else:
    num = ord(message[i]) - 65 + shift
    if num > 25:
      num -= 26
      final_message += rotor1[num]

  shift+=1

print(final_message)

我对编码很陌生,所以我想知道是否有人能发现我的错误。我没有收到任何错误,我的代码刚刚完成而没有打印任何字母

标签: python

解决方案


似乎 的缩进final_message += rotor1[num]应该与 的缩进处于同一水平if num > 25。像这样 -

if num > 25:
    num -= 26
final_message += rotor1[num]

推荐阅读