|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
这是代码:
inputWord = str(input('请输入一段话'))
str1 = 'abcdefghijklmnopqrstuvwxyz'
list1 = []
list1.append(str1)
str2 = inputWord.upper()
list2 = []
list2.append(str2)
last = len(str2) - 1
for i in range(0,last):
if list2[i] in list1:
if i<13:
print(list1[i+13])
else:
print(list1[i-13])
显示的错误是
if list2[i] in list1:
IndexError: list index out of range
我定义的i是在列表长度以内的,为什么会显示超出索引值呢?另外希望大神帮我完善这段代码,谢谢!
这个是在你原有基础上改得最像的了,但是逻辑结构完全不一样,而且我觉得写得很啰嗦。
一行代码就能搞定的事情。
- def ceacer(words):
- list1 = list(words.upper())
- list2 = []
- last = len(list1)
- for i in range(0,last):
- s = ord(list1[i])
- s = s + 13
- if s > 90:
- s = s - 26
- list2.append(chr(s))
- return ''.join(list2)
- print(ceacer('abcdefghijklmnopqrstuvwxyz'))
复制代码
|
|