【问题标题】:Having problems understanding a code about maketrans在理解有关 maketrans 的代码时遇到问题
【发布时间】:2013-11-19 06:50:29
【问题描述】:
def shift_string(text, shift):
    intab='abcdefghijklmnopqrstuvwxyz'
    outab=intab[shift:]+intab[:shift]
    return str.maketrans(intab, outab)


shift_string("hello",5)

当我运行这个时,shell中出现一个空白然后什么也没发生,我现在不明白发生了什么?

【问题讨论】:

  • 尝试打印 shift_string 的结果

标签: python string python-3.x


【解决方案1】:

maketrans 用于创建传递给字符串的.translate() 方法的映射。现在您只是返回映射,而不是翻译后的字符串。

def shift_string(text, shift):
    intab='abcdefghijklmnopqrstuvwxyz'
    outab=intab[shift:]+intab[:shift]
    mapping = str.maketrans(intab, outab)
    return text.translate(mapping)

【讨论】:

  • 你是神!谢谢!
  • string.ascii_lowercase 可以使用。
猜你喜欢
  • 2023-01-10
  • 1970-01-01
  • 2022-11-29
  • 2011-03-17
  • 1970-01-01
  • 2012-12-20
  • 1970-01-01
  • 1970-01-01
  • 2021-06-21
相关资源
最近更新 更多