Измените ASCII на символы в строке

Я пытаюсь преобразовать значения ASCII в строку в обычные символы, но что бы я ни пытался сделать, я получу результат как

this\032is\032my\032\output\000

и мне нужно

this is my output

Спасибо за вашу помощь!

@RyanHaining То же, что и мой результат

Brykyz 15.04.2018 20:02

Если вы хотите задать больше вопросов о переполнении стека: каков ваш вклад? и какой у тебя код? Без этих двух мы не сможем сказать, что вы сделали не так.

Jongware 15.04.2018 20:37
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
2
192
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

\032 является восьмеричным для десятичного числа 26, поэтому на самом деле это не пробел. Если вы используете шестнадцатеричное значение с правильным числом, вы должны получить то, что хотите. 0x20 == 32 ниже

>>> s = 'this\x20is\x20my\x20\output\00'
>>> print(s)
this is my \output

Я знаю, но я должен делать это с десятичным числом

Brykyz 15.04.2018 20:02

@Brykyz почему? Получаете ли вы числа из пользовательского ввода, которые пытаетесь преобразовать?

Ryan Haining 15.04.2018 20:03

Потому что это школьное задание

Brykyz 15.04.2018 20:09

это очень странное назначение, если в строках действительно есть \ 032, поскольку это уже что-то значит для python

Ryan Haining 15.04.2018 20:22
Ответ принят как подходящий

Я решил это с

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 - строка, которую мне нужно преобразовать

Другие вопросы по теме