Ste*_*nda 4 python string python-2.7
这段代码应该接受一个字符串输入并输出另一个字符串,它只是输入字符串的修改版本.我不能让它工作.
它应该输出一个字符串,其中每个字母是输入字符串的下一个字母.但是在运行代码时,它只输出相同的输入字符串而不是修改后的字符串.
def str_changer(string):
string_list = list(string)
alphabets = 'abcdefghijklmnopqrstuvwxyz'
positions = []
for letter in string_list:
positions.append(alphabets.index(letter))
for each in positions:
each = each + 1
for each in string_list:
string_list[string_list.index(each)] =
alphabets[positions[string_list.index(each)]]
another = ''.join(string_list)
return another
lmao = raw_input('Enter somin\'')
print str_changer(lmao)
Run Code Online (Sandbox Code Playgroud)
你可以只用一行:
s = 'abcdz'
print(''.join(chr(ord(letter) + 1) if letter != 'z' else 'a' for letter in s))
# bcdea
Run Code Online (Sandbox Code Playgroud)
演示:
>>> ord('a')
97
>>> ord('b')
98
>>> chr(ord('a') + 1)
'b'
Run Code Online (Sandbox Code Playgroud)