Python使用的几个小技巧

成大事不在于力量的大小,而在于能坚持多久。

写在前面

此文用于记录平时使用Python中学到的各种方法,进一步加深入Python的运用。


按固定长度分割字符串

import re
def cut_text(text, lenth):
    textArr = re.findall('.{' + str(lenth) + '}', text)
    textArr.append(text[(len(textArr) * lenth):])
    return textArr

print(cut_text('123456789abcdefghi', 3))

输出:

注意: 如果正好分割成相应长度,在列表末尾会有一个空字符。


字符串与二进制

def encode(s):
    return ' '.join([bin(ord(c)).replace('0b', '') for c in s])

def decode(s):
    return ''.join([chr(i) for i in [int(b, 2) for b in s.split(' ')]])

print(encode('world'))
print(decode('1110111 1101111 1110010 1101100 1100100'))

输出:


十六进制转字符串

a="d4e8e1f4a0f7e1f3a0e6e1f3f4a1"
b=''
# 这个是将不可见的处理为可见的,减了128,如果是正常转,不用减
for i in range(0,len(a),2):
    b+=str(chr(int(a[i:i+2],16)-128))
print(b)

输出:

posted @ 2021-12-12 17:01  煊奕  阅读(30)  评论(0编辑  收藏  举报