在python中有没有忽略转义序列的方法?

2024-09-24 06:23:57 发布

您现在位置:Python中文网/ 问答频道 /正文

import re
import math
def encode(n, strng):

    for z in range (n):
        temp = []
        spcPos = []


        for i , x in enumerate(strng):
            if x == ' ':
                spcPos.append(i)
        strng = re.sub(' ', '', strng)

        for i in range (len(strng)):
            temp.append(strng[i - n])

        temp2 = []

        ezEnu = 0

        for i in temp:
            if ezEnu in (spcPos):
                temp2.append(' ')
                ezEnu += 1
            temp2.append(i)
            ezEnu += 1

        temp2 = ''.join(temp2)
        temp2 = temp2.split()
        temp = []

        withSpc = []

        withSpc2 = []

        oglen = []

        for i in temp2:
            oglen.append(len(i))
            for x in range (math.ceil(n / len(i))):
                withSpc.append(i)
            withSpc2.append(''.join(withSpc))
            withSpc = []

        newa = []

        for i, x in enumerate(withSpc2):
            for y in range(int(oglen[i])):
                newa.append(x[y - n])

        temp2 = []

        ezEnu = 0

        for i in newa:
            if ezEnu in (spcPos):
                temp2.append(' ')
                ezEnu += 1
            temp2.append(i)
            ezEnu += 1

        strng = ''.join(temp2)

    return(''.join([str(n), ' ', strng]))

如何获取字符串,并使其成为转义序列作为常规字符处理?

我有一个函数encode,它接受一个字符串并对其进行编码。问题是,当我收到带有/in或任何转义序列的字符串时,它会忽略它们,并且不会将其作为要编码的消息的一部分

我无法控制进入函数的字符串,它们是预定义的

据我所知,r“”只适用于新字符串

谢谢:)


Tags: 字符串inforlenifrangetempjoin