Как проверить, является ли число нечетным в Python

PythonPythonBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В этом лабораторном занятии (LabEx) вы научитесь проверять, является ли число нечетным на Python. Лабораторное занятие сосредоточено на использовании оператора остатка от деления (%) для определения, является ли целое число нечетным, путем проверки, делится ли оно нацело на 2.

Вы начнете с определения нечетных чисел и применения оператора остатка от деления к примеру числа. Затем вы измените код, чтобы проверить разные числа и наблюдать за выводом, закрепив свое понимание того, как работает оператор остатка от деления при определении нечетных и четных чисел. Наконец, вы проверите тип ввода, чтобы убедиться, что код корректно обрабатывает нецелые входные данные.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/BasicConceptsGroup(["Basic Concepts"]) python(("Python")) -.-> python/ControlFlowGroup(["Control Flow"]) python(("Python")) -.-> python/ErrorandExceptionHandlingGroup(["Error and Exception Handling"]) python/BasicConceptsGroup -.-> python/variables_data_types("Variables and Data Types") python/BasicConceptsGroup -.-> python/numeric_types("Numeric Types") python/BasicConceptsGroup -.-> python/type_conversion("Type Conversion") python/ControlFlowGroup -.-> python/conditional_statements("Conditional Statements") python/ErrorandExceptionHandlingGroup -.-> python/catching_exceptions("Catching Exceptions") subgraph Lab Skills python/variables_data_types -.-> lab-559552{{"Как проверить, является ли число нечетным в Python"}} python/numeric_types -.-> lab-559552{{"Как проверить, является ли число нечетным в Python"}} python/type_conversion -.-> lab-559552{{"Как проверить, является ли число нечетным в Python"}} python/conditional_statements -.-> lab-559552{{"Как проверить, является ли число нечетным в Python"}} python/catching_exceptions -.-> lab-559552{{"Как проверить, является ли число нечетным в Python"}} end

Определение нечетных чисел

На этом этапе вы научитесь определять нечетные числа на Python. Нечетные числа - это целые числа, которые не могут быть разделены нацело на 2. Вы будете использовать оператор остатка от деления (%), чтобы определить, является ли число нечетным.

Сначала создадим файл Python с именем odd_numbers.py в каталоге ~/project с помощью редактора VS Code.

~/project/odd_numbers.py

Теперь откройте файл odd_numbers.py в редакторе и добавьте следующий код:

number = 7
if number % 2 != 0:
    print(number, "is an odd number")
else:
    print(number, "is not an odd number")

В этом коде:

  • Мы присваиваем целое число 7 переменной number.
  • Мы используем оператор остатка от деления (%), чтобы получить остаток от деления number на 2.
  • Если остаток от деления не равен 0, число является нечетным, и мы выводим сообщение, указывающее на это.
  • В противном случае число является четным, и мы выводим другое сообщение.

Сохраните файл odd_numbers.py.

Далее, запустите скрипт с помощью команды python в терминале:

python odd_numbers.py

Вы должны увидеть следующий вывод:

7 is an odd number

Теперь изменим файл odd_numbers.py, чтобы проверить, является ли другое число, например 4, нечетным. Откройте файл odd_numbers.py в редакторе и измените значение переменной number:

number = 4
if number % 2 != 0:
    print(number, "is an odd number")
else:
    print(number, "is not an odd number")

Сохраните файл odd_numbers.py и запустите его снова:

python odd_numbers.py

Теперь вы должны увидеть следующий вывод:

4 is not an odd number

Это демонстрирует, как определять и проверять нечетные числа на Python с использованием оператора остатка от деления.

Применение оператора остатка от деления

На этом этапе вы углубите свое понимание оператора остатка от деления (%) и рассмотрите его применение для определения четных и нечетных чисел. Оператор остатка от деления возвращает остаток от деления. Это особенно полезно для определения четных и нечетных чисел, так как любое четное число, разделенное на 2, имеет остаток 0, в то время как нечетное число имеет остаток 1.

Давайте изменим файл odd_numbers.py, который вы создали на предыдущем этапе, чтобы он принимал ввод от пользователя и затем применял оператор остатка от деления.

Откройте файл odd_numbers.py в редакторе VS Code и замените существующий код следующим:

number = int(input("Enter an integer: "))

if number % 2 == 0:
    print(number, "is an even number.")
else:
    print(number, "is an odd number.")

Вот разбор этого кода:

  • input("Enter an integer: "): Это приглашает пользователя ввести целое число. Функция input() всегда возвращает строку, поэтому нам нужно преобразовать ее в целое число.
  • int(...): Это преобразует строковый ввод в целое число.
  • number % 2 == 0: Это проверяет, равен ли остаток от деления number на 2 нулю. Если да, то число является четным.
  • Затем операторы if и else выводят соответствующее сообщение в зависимости от того, является ли число четным или нечетным.

Сохраните файл odd_numbers.py.

Теперь запустите скрипт с помощью команды python в терминале:

python odd_numbers.py

Скрипт попросит вас ввести целое число. Введите 10 и нажмите Enter:

Enter an integer: 10

Вы должны увидеть следующий вывод:

10 is an even number.

Запустите скрипт еще раз и введите 15:

python odd_numbers.py
Enter an integer: 15
15 is an odd number.

Это демонстрирует, как использовать оператор остатка от деления для определения, является ли число, введенное пользователем, четным или нечетным. Оператор остатка от деления является фундаментальным инструментом в программировании и используется в различных приложениях, не ограничиваясь только проверкой на четность и нечетность чисел.

Валидация типа ввода

На этом этапе вы научитесь валидировать тип ввода, чтобы убедиться, что пользователь вводит целое число. Это важно, потому что функция int() вызовет исключение ValueError, если ввод не может быть преобразован в целое число (например, если пользователь вводит текст).

Для обработки возможных ошибок вы будете использовать блок try-except. Это позволяет вам элегантно обрабатывать исключения и предотвратить аварийное завершение программы.

Откройте файл odd_numbers.py в редакторе VS Code и замените существующий код следующим:

try:
    number = int(input("Enter an integer: "))
    if number % 2 == 0:
        print(number, "is an even number.")
    else:
        print(number, "is an odd number.")
except ValueError:
    print("Invalid input. Please enter an integer.")

Вот разбор этого кода:

  • try:: В этом блоке находится код, который может вызвать исключение.
  • number = int(input("Enter an integer: ")): Эта строка пытается преобразовать ввод пользователя в целое число. Если ввод не является допустимым целым числом, будет вызвано исключение ValueError.
  • if number % 2 == 0: и else:: Эти строки аналогичны предыдущему этапу и проверяют, является ли число четным или нечетным.
  • except ValueError:: Этот блок перехватывает исключение ValueError, если оно было вызвано в блоке try.
  • print("Invalid input. Please enter an integer."): Эта строка выводит сообщение об ошибке, если пользователь вводит недопустимые данные.

Сохраните файл odd_numbers.py.

Теперь запустите скрипт с помощью команды python в терминале:

python odd_numbers.py

Скрипт попросит вас ввести целое число. Введите abc и нажмите Enter:

Enter an integer: abc

Вы должны увидеть следующий вывод:

Invalid input. Please enter an integer.

Запустите скрипт еще раз и введите 7.5:

python odd_numbers.py

Вы должны увидеть следующий вывод:

Invalid input. Please enter an integer.

Запустите скрипт еще раз и введите 11:

python odd_numbers.py
Enter an integer: 11
11 is an odd number.

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

Резюме

В этом лабораторном занятии вы научились определять нечетные числа на Python и использовать оператор остатка от деления (%) для определения, является ли число четным или нечетным. Вы создали скрипт на Python odd_numbers.py и использовали оператор остатка от деления для проверки остатка при делении числа на 2. Если остаток не равен 0, число определяется как нечетное; в противном случае оно является четным.

Вы практиковались в изменении скрипта с использованием различных чисел и наблюдении за соответствующим выводом, закрепляя свое понимание того, как работает оператор остатка от деления при определении четных и нечетных чисел.