使用Python编写的字符替换所有数字的程序

使用Python编写的字符替换所有数字的程序

假设我们有一个包含小写英文字母的字母数字字符串 s,其偶数位置包含字母,奇数位置包含数字。考虑一个操作 shift(c, x),其中 c 是任何字符,x 是一个数字(即位数),这将查找字符 c 后的第 x 个字符。例如,shift(‘p’, 5) = ‘u’,shift(‘a’, 0) = ‘a’。现在,对于每个奇数位置 i,我们要使用 shift(s[i-1], s[i]) 替换数字 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:= 空字符串

  • 对于 i 从 0 到 s 的大小,重复以下步骤:

    • 如果 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"

输出

acbcdhfihj

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程