Как удалить часть строки в Python - PullRequest
0 голосов
/ 02 апреля 2020

Я кодирую калькулятор. Я решил использовать 2 строки: одну для пользователя и одну для расчета. Теперь я хочу сделать функцию, которая удаляет все на экране. Но теперь у меня проблема в том, что переменная, которая используется для вычисления, все еще имеет значение числа внутри нее. Я хотел спросить, как я мог удалить этот номер. Я также использую окно tkinter, чтобы показать все.

Вот функция, где я хотел это сделать:

def clear_S(event):
    global Evaluation_T    #This gets shown
    global Evaluation_C    #This is for the calculation
    Evaluation_T = "                "
    renew_Label()          #Displays it to a 
    Evaluation_T = ""
    #Logic, to remove that from Evaluation_C

Если вам нужна дополнительная информация, пожалуйста, спросите.

1 Ответ

0 голосов
/ 02 апреля 2020

Это не то, как работают вход и выход. Когда вы что-то печатаете, вы печатаете значение этой переменной на STDOUT, который является потоковым файлом для соединения вашего программного обеспечения с вашим терминалом. То, что вы делаете, это делает ксерокопию и редактируйте оригинальную копию, ожидая, что фотокопия также будет отредактирована. Посмотрите на Есть ли способ очистить ваш печатный текст в python? , это должно быть то, что вы искали.

РЕДАКТИРОВАТЬ: Я неправильно понимаю, что вы спросили. Существуют различные решения: 1) Если Evaluation_Text всегда является концом Evaluation_C, вы можете сделать:

Evaluation_C = Evaluation_C[:-len(Evaluation_Text)]

или

2) Вы можно использовать заменить на обратную строку и сделать это только один раз с:

Evaluation_C[::-1].replace(Evaluation_Text[::-1], 1)

...