Как определить количество дней в Питоне, вводя номер месяца и дня с клавиатуры? 📅🐍

Чтобы определить количество дней в заданном месяце, необходимо написать программу на Python, которая принимает ввод с клавиатуры номер месяца и день.


    month = int(input("Введите номер месяца: "))
    day = int(input("Введите день: "))

    days_in_month = 0

    if month == 1 or month == 3 or month == 5 or month == 7 or month == 8 or month == 10 or month == 12:
        days_in_month = 31
    elif month == 4 or month == 6 or month == 9 or month == 11:
        days_in_month = 30
    elif month == 2:
        if (year % 4 == 0 and not year % 100 == 0) or year % 400 == 0:
            days_in_month = 29
        else:
            days_in_month = 28

    print(f"В указанном месяце и дне: {days_in_month} дней.")
    

Детальный ответ

Определение количества дней в месяце в Python

Чтобы написать программу для определения количества дней в месяце в Python, нам нужно ввести номер месяца и день с клавиатуры. Затем мы можем использовать различные конструкции языка Python для выполнения этой задачи.

Использование функции calendar.monthrange()

В Python есть модуль calendar, который предоставляет функцию monthrange(). Эта функция принимает год и номер месяца в качестве аргументов и возвращает кортеж с первым днем недели и количеством дней в этом месяце. Мы можем использовать только второй элемент кортежа для получения количества дней в месяце.


import calendar

# Ввод номера месяца с клавиатуры
month = int(input("Введите номер месяца: "))

# Ввод номера дня с клавиатуры
day = int(input("Введите номер дня: "))

# Получение количества дней в указанном месяце
days_in_month = calendar.monthrange(year, month)[1]

# Вывод результата
print(f"Количество дней в указанном месяце: {days_in_month}")
    

Использование словаря

Также мы можем использовать словарь, чтобы сопоставить номер месяца с количеством дней. В этом случае мы можем определить количество дней в каждом месяце и затем просто получить соответствующее значение из словаря.


# Создание словаря с количеством дней в каждом месяце
days_in_month_dict = {
    1: 31,
    2: 28,
    3: 31,
    4: 30,
    5: 31,
    6: 30,
    7: 31,
    8: 31,
    9: 30,
    10: 31,
    11: 30,
    12: 31
}

# Ввод номера месяца с клавиатуры
month = int(input("Введите номер месяца: "))

# Ввод номера дня с клавиатуры
day = int(input("Введите номер дня: "))

# Получение количества дней в указанном месяце
days_in_month = days_in_month_dict.get(month, 0)

# Проверка високосного года для февраля
if month == 2 and calendar.isleap(year):
    days_in_month = 29

# Вывод результата
print(f"Количество дней в указанном месяце: {days_in_month}")
    

Дополнительные замечания

Обратите внимание, что в обоих примерах мы используем функцию input() для ввода номера месяца и дня с клавиатуры. Убедитесь, что вводимые значения являются целыми числами. Если введено некорректное значение, программа может выдать ошибку или привести к неправильным результатам.

Кроме того, в примере со словарем мы также проверяем, является ли указанный месяц февралем и високосным годом с помощью функции calendar.isleap(). Если это так, то количество дней в феврале будет равно 29.

Видео по теме

Напишите программу на Python для преобразования названия месяца в количество дней #python

Python. Команды print() input()

5 Ввод и вывод данных python. Команда input()

Похожие статьи:

🔧 Как установить Python 3.9 на свой компьютер без проблем

🧮 Как определить четность в Python: простые способы и примеры кода 🐍

🔍 Как создать единичную матрицу в Python? 🐍 Учебник по созданию единичных матриц

Как определить количество дней в Питоне, вводя номер месяца и дня с клавиатуры? 📅🐍

🕒 Как узнать сколько времени работает программа Python?

🐍 Как использовать Питон в Юнити: руководство для начинающих

🔗 Как склеить списки Python: легкий способ объединения списков