加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – 如何用下一个字符串替换字符串中的字符?

发布时间:2020-12-20 12:32:05 所属栏目:Python 来源:网络整理
导读:我想用下一个字符替换字符串的每个字符,最后一个应该成为第一个.这是一个例子: abcdefghijklmnopqrstuvwxyz 应成为: bcdefghijklmnopqrstuvwxyza 是否可以在不使用替换功能的情况下进行26次? 解决方法 您可以使用 str.translate() method让Python在一个步
我想用下一个字符替换字符串的每个字符,最后一个应该成为第一个.这是一个例子:

abcdefghijklmnopqrstuvwxyz

应成为:

bcdefghijklmnopqrstuvwxyza

是否可以在不使用替换功能的情况下进行26次?

解决方法

您可以使用 str.translate() method让Python在一个步骤中替换其他字符.

使用string.maketrans() function将ASCII字符映射到其目标;使用string.ascii_lowercase可以帮助您,因为它可以节省您自己键入所有字母:

from string import ascii_lowercase
try:
    # Python 2
    from string import maketrans
except ImportError:
    # Python 3 made maketrans a static method
    maketrans = str.maketrans 

cipher_map = maketrans(ascii_lowercase,ascii_lowercase[1:] + ascii_lowercase[:1])
encrypted = text.translate(cipher_map)

演示:

>>> from string import maketrans
>>> from string import ascii_lowercase
>>> cipher_map = maketrans(ascii_lowercase,ascii_lowercase[1:] + ascii_lowercase[:1])
>>> text = 'the quick brown fox jumped over the lazy dog'
>>> text.translate(cipher_map)
'uif rvjdl cspxo gpy kvnqfe pwfs uif mbaz eph'

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读