«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Почему моя проверка «Не в» на наличие кортежей не работает в Python?

Почему моя проверка «Не в» на наличие кортежей не работает в Python?

Опубликовано 14 ноября 2024 г.
Просматривать:174

Why Isn\'t My \

Проверка присутствия элементов в списке Python

При работе со списками в Python часто необходимо проверить, присутствует или отсутствует определенный элемент. Для условных ветвей, основанных на отсутствии элемента в списке, обычно используется следующий синтаксис:

if element not in list:
    # Code to execute if element is not in the list

Однако пользователь столкнулся с проблемой, из-за которой этот синтаксис не работает должным образом для списка кортежей.

Проблема

Приведенный код пытается проверить, нет ли кортежа в списке, и выполнить определенное действие, только если кортеж отсутствует:

if curr_x -1 > 0 and (curr_x-1 , curr_y) not in myList:

    # Do Something

Пользователь отмечает, что этот код не может выполнить запланированное действие при определенных обстоятельствах.

Решение

Предоставленный синтаксис для проверки отсутствия элемента список правильный и должен работать без проблем. Следовательно, ошибка, скорее всего, находится где-то в другом месте кода.

Чтобы устранить эту проблему, можно предпринять следующие шаги:

  1. Проверьте значения curr_x, curr_y и myList во время проверки условия: Убедитесь, что кортеж (curr_x-1, curr_y) отсутствует в myList, когда условие оценивается как False.
  2. Проверьте отступ блока условного кода : Убедитесь, что предполагаемое действие имеет правильный отступ внутри блока if.
  3. Отладьте код, напечатав промежуточные значения: Используйте операторы печати или отладчик для отображения значений curr_x, curr_y, myList и результат условной проверки во время выполнения. Это поможет выявить причину проблемы.
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3