Я пытаюсь преобразовать значения ASCII в строку в обычные символы, но что бы я ни пытался сделать, я получу результат как
this\032is\032my\032\output\000
и мне нужно
this is my output
Спасибо за вашу помощь!
Если вы хотите задать больше вопросов о переполнении стека: каков ваш вклад? и какой у тебя код? Без этих двух мы не сможем сказать, что вы сделали не так.






\032 является восьмеричным для десятичного числа 26, поэтому на самом деле это не пробел. Если вы используете шестнадцатеричное значение с правильным числом, вы должны получить то, что хотите. 0x20 == 32 ниже
>>> s = 'this\x20is\x20my\x20\output\00'
>>> print(s)
this is my \output
Я знаю, но я должен делать это с десятичным числом
@Brykyz почему? Получаете ли вы числа из пользовательского ввода, которые пытаетесь преобразовать?
Потому что это школьное задание
это очень странное назначение, если в строках действительно есть \ 032, поскольку это уже что-то значит для python
Я решил это с
import re
def replace(match):
return chr(int(match.group(1)))
aux = str(element.text)
regex = re.compile(r"\\(\d{1,3})")
new = regex.sub(replace, aux)
где element.text - строка, которую мне нужно преобразовать
@RyanHaining То же, что и мой результат