1条回答 默认 最新
- 辉煌仪奇 2021-10-27 22:11关注
示例程序如下,你修改修改
# 凯撒加密 input_str = input() start1 = ord('A') mid1 = ord('M') end1 = ord('Z') start2 = ord('a') mid2 = ord('m') end2 = ord('z') dis = end2 - start2 # 26个字母的距离 print('{}-{}-{}-{}-{}-{}'.format(start1, mid1, end1, start2, mid2, end2)) print('{}-{}-{}-{}-{}-{}'.format(chr(start1), chr(mid1), chr(end1), chr(start2), chr(mid2), chr(end2))) for i in range(len(input_str)): src = input_str[i] dit = "" cha_int = ord(src) if (cha_int >= start2 and cha_int <= mid2) or (cha_int >= start1 and cha_int <= mid1): # 当A-M a-m dit = chr(cha_int + 13) # 直接加13即可 elif (cha_int > mid2 and cha_int <= end2) or (cha_int > mid1 and cha_int <= end1): # 当 N-Z n-z 的时候 dit = chr(cha_int + 12 - dis) # 注意这里是 +12 然后-dis else: dit = chr(cha_int) print(dit, end='')
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报