如何递增 Python 中的字母?

How to increment letters in Python?

编写一个程序,输入一个字符(长度为1的字符串),你应该假设它是一个大写字符;输出应该是字母表中的下一个字符。如果输入是 'Z',你的输出应该是 'A'。 (您将需要使用 if 语句。) 到目前为止,我已经尝试了几种这样的代码:

chr = input()
if chr == '65':
        x = chr(ord(chr) + 1)
print(chr(65) + 1)

它说打印时没有输出,只是不确定如何获得正确的输出。我对编程很陌生。

下面的方法正在使用 ascii_letters。

import string

// returns a string of all the alphabets
// abcdefghijklmnopqrstuvwxyz"

   result = string.ascii_letters 

// get the index of the input alphabet and return the next alphabet in the results string. 
// using the modulus to make sure when 'Z' is given as the input it returns to the first alphabet. 

   result[(result.index(alphabet.lower()) + 1) % 26].upper() 

希望这就是您要找的

_chr = input('Enter character(A-Z): ')
if _chr == 'Z':
    print('A')
else:
    print(chr(ord(_chr) + 1))

这应该有效:

my_chr = ord(input())
if my_chr == 90:
        print('A')
else:
    print(chr(my_chr+1))

它获取输入字母 (A-Z) 并获取其 ord() 值。然后检查该值是否等于 Z (ord('Z') == 90) 并打印 A 否则,它将其递增 1 然后将其变回字符串并打印它。

你可以使用下面的思路:

A​​ = 65 Z = 90

如果从输入中减去 ord('A'),则范围缩小到 [0, 25]

因此,您需要在 [0, 25] 范围内定义输出。为避免超出此范围,您应该使用“%”。

char_input = input()
return chr((ord(char_input) - ord('A') + 1) % 26 + ord('A'))

这意味着,给定输入,你将减去 ord('A') 的值到 "fix" 范围,然后加上 + 1。你将 % 26 到避免超出范围。所有这些之后,再次添加 ord('A') 。

alpha=input()
if alpha =='Z': print('A')
else:print(chr(ord(alpha)+1))

"You will need to use an if statement"