python如何对字符串中的字符进行映射?

查看:122
本文介绍了python如何对字符串中的字符进行映射?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

比如我想将一个字符串中的所有字符变成它ASCII码中前7位的数字,在C里面只要写

for(int i = 0; i < length; i++)
    str[i] = str[i]-7;

在python中应该如何处理呢?用maketrans建立转化表的话一个个输入所有ASCII字符太慢了

解决方案

python3

>>> s='hijkl'
>>> bytes(map(lambda c:c-7,bytes(s,'ascii'))).decode('ascii')
'abcde'


bytearray

>>> s='hijkl'
>>> barr = bytearray(s,'ascii')
>>> for i in range(len(barr)):
    barr[i]-=7
    
>>> print(barr.decode('ascii'))
abcde

这篇关于python如何对字符串中的字符进行映射?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆