Как сохранить вывод печати в переменной (после экранирования)

#python #string #encoding #escaping

Вопрос:

У меня есть переменная A, равная :

 A = '$\epsilon_1$n'
 

Когда мы печатаем переменную, мы получаем это :

 print(A)
$epsilon_1$
 

Как я могу сохранить этот вывод в переменной?
Из A я хочу, чтобы B равнялся :

 B = '$epsilon_1

Спасибо!


Комментарии:

1. Да, но я хочу сохранить "$epsilon_1$ "вместо этого" $\epsilon_1$n " в переменной. У меня есть файл, содержащий " $epsilon_1$", но когда я его читаю, он становится "$\epsilon_1$n " из-за побега.

Ответ №1:

Снимите n " от A "и назначьте его B "кому".

 A = '$\epsilon_1$n'
B = A.strip('n')
print(f'B: {B}')

# Output:
# B: $epsilon_1$
 

Комментарии:

1. Это не работает, при этом у нас все равно будет первая обратная косая черта (она становится $\epsilon_1$).

2. Вы запустили мой код непосредственно на терминале или из файла ?

3. на терминале. Вы получаете $epsilon_1$, потому что используете функцию печати. Но когда вы попытаетесь увидеть, что хранится на B, у вас будет $\epsilon_1$ (с 2 обратными косыми чертами)

4. Терминал показывает escape-последовательности и print не показывает. Значение B не изменится, независимо от того, входите ли вы в терминал или используете print .

5. Ах да, вы правы, это работает со стриптизом! Большое спасибо!

Спасибо!

Комментарии:

1. Да, но я хочу сохранить «$epsilon_1$ «вместо этого» $\epsilon_1$n » в переменной. У меня есть файл, содержащий » $epsilon_1$», но когда я его читаю, он становится «$\epsilon_1$n » из-за побега.

Ответ №1:

Снимите n » от A «и назначьте его B «кому».


Комментарии:

1. Это не работает, при этом у нас все равно будет первая обратная косая черта (она становится $\epsilon_1$).

2. Вы запустили мой код непосредственно на терминале или из файла ?

3. на терминале. Вы получаете $epsilon_1$, потому что используете функцию печати. Но когда вы попытаетесь увидеть, что хранится на B, у вас будет $\epsilon_1$ (с 2 обратными косыми чертами)

4. Терминал показывает escape-последовательности и print не показывает. Значение B не изменится, независимо от того, входите ли вы в терминал или используете print .

5. Ах да, вы правы, это работает со стриптизом! Большое спасибо!