''' 编写一个方法,以一个连续的(递增的)字母数组作为输入,并返回数组中丢失的字母。 你总是会得到一个有效的数组。总是少一个字母。数组的长度总是至少为2。 数组将始终只在一种情况下包含字母。 例子: [a, b, c, d ', ' f '] - >“e”(“O”,‘问’,‘R’, ' S '] - >“P” (“a”、“b”、“c”,“d”,“f”- >“e” (“O”、“问”、“R”、“S”- >“P” (使用26个字母的英文字母!) ''' #方法1 ''' 知识点:string.ascii_uppercase # 获取26个大写字母 string.ascii_lowercase # 获取26个小写字母 string.ascii_letters # 获取26个小写字母和26个大写字母 ''' import string def find_missing_letter(chars): str_all=string.ascii_letters chars_s=str_all.index(chars[0]) chars_e=str_all.index(chars[-1]) return ''.join(list(set(str_all[chars_s:chars_e+1])-set(chars))) print(find_missing_letter(['O','Q','R','S'])) #方法2 '''知识点: ord('a') 输出97:ord()返回字符串的ascii chr(97) 输出a:chr()返回ascii对应的字符串 ''' def find_missing_letter2(chars): for i in range(1,len(chars)): if ord(chars[i])-ord(chars[i-1]) !=1: return chr(ord(chars[i-1])+1) print(find_missing_letter2(["a","b","c","d","f"]))