При отладке с помощью Pycharm выполнялся код, который не должен был выполняться.Python

Программы на Python
Ответить
Anonymous
 При отладке с помощью Pycharm выполнялся код, который не должен был выполняться.

Сообщение Anonymous »

Когда я отлаживал код Python с помощью Pycharm, я столкнулся со странной проблемой, когда выполнялась функция, которая не должна была выполняться. Вот мой код:

Код: Выделить всё

import os

input_dir = "D:/MyCode/Data/t"

for root, dirs, files in os.walk(input_dir):
for file in files:
if file.endswith(".jpg") and '-' in file:
if file == "x":
print("error")
У меня нет файла x в моей папке, но когда я устанавливаю точку останова в коде печати («ошибка»), выполняется печать («ошибка») и выводится ошибка . Если я установлю точки останова в файле if. endscan (". jpg") и '-' в файле: print ("ошибка") не будет выполнена, и когда я запускаю код без отладки, print ("ошибка") также не будет выполнена. Могу я спросить, что послужило причиной этого?
Место установки точки останова
Изображение

результаты выполнения
Изображение

Это воспроизведенное изображение моей проблемы. Я установил точку останова в функции печати, но вместо нее была выполнена функция печати, которая не должна была выполняться, и программа не завершила работу должным образом
Я пытался изменить файлы в папке , но даже если бы в моей папке не было файлов, функция печати все равно была бы выполнена.
Извините, возможно, я неясно объяснил свой вопрос. Я имею в виду, что в моей логике кода if file == "x": никогда не должен быть истинным, поэтому print("error") не должен выполняться. Однако во время отладки точки останова, когда я помещаю точку останова в print («ошибка»), консоль выводит «ошибку», и программа завершается с кодом выхода -1073741819 (0xC0000005). В чем может быть причина этого?

Подробнее здесь: https://stackoverflow.com/questions/792 ... as-execute
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»