我需要一个给出字符串的简单程序,在字母数字排序中返回下一个(或者只是字母顺序).
f("aaa")="aab"
f("aaZ")="aba"
Run Code Online (Sandbox Code Playgroud)
等等.
在其中一个模块中是否有这个功能?
Ada*_*eld 12
我不认为有这样做的内置功能.以下应该有效:
def next_string(s):
strip_zs = s.rstrip('z')
if strip_zs:
return strip_zs[:-1] + chr(ord(strip_zs[-1]) + 1) + 'a' * (len(s) - len(strip_zs))
else:
return 'a' * (len(s) + 1)
Run Code Online (Sandbox Code Playgroud)
说明:你找到的最后一个字符不是a z,递增它,然后用a's 替换它后面的所有字符.如果整个字符串是z's',那么返回a一个更长的字符串.