使用Python将所有数字替换为字符的程序
假设我们有一个包含小写英文字母(在偶数位置)和数字(在奇数位置)的字母数字字符串s。考虑一个操作shift(c, x),其中c是任何字符,x是一个数字(数字),这将找到c之后的第x个字符。例如,shift('p', 5) = 'u' 以及 shift('a', 0) = 'a'。现在对于每个奇数索引i,我们想要将数字s[i]替换为shift(s[i-1], s[i])。我们必须找到替换所有数字后的s。
因此,如果输入类似于s = "a2b1d4f3h2",则输出将为"acbcdhfihj",因为
shift('a', 2) = 'c'
shift('b', 1) = 'c'
shift('d', 4) = 'h'
shift('f', 3) = 'i'
shift('h', 2) = 'j'
为了解决这个问题,我们将遵循以下步骤 -
res:= 空字符串
对于范围从0到s的大小的i,执行
如果s[i]是数字,则
res := res 连接来自 (ASCII s[i] + ASCII s[i-1]) 的字符
否则,
res := res 连接 s[i]
返回res
让我们看看以下实现以更好地理解 -
示例
def solve(s): res="" for i in range(len(s)): if s[i].isdigit(): res+= chr(int(s[i])+ord(s[i-1])) else: res+=s[i] return res s = "a2b1d4f3h2" print(solve(s))
输入
"a2b1d4f3h2"
Learn Python in-depth with real-world projects through our Python certification course. Enroll and become a certified expert to boost your career.
输出
acbcdhfihj
广告