Python Календарь - PullRequest
       4

Python Календарь

0 голосов
/ 26 февраля 2020

Создание программы календаря, которая позволяет пользователю вводить день, месяц и год в трех отдельных переменных, как показано ниже.

Please enter a date

Day:

Month: 

Year: 

Затем попросите пользователя выбрать из меню выбора, используя это форматирование: Меню:

1)   Calculate the number of days in the given month.

2)   Calculate the number of days left in the given year.

Программа должна включать в себя следующие функции: leap_year: принимает год в качестве параметра и возвращает 1, если год является високосным (ссылки на внешний сайт) и 0 если это не так. Эта информация будет использоваться только другими функциями. number_of_days: эта подпрограмма будет принимать два параметра в следующем порядке: месяц и год. Он вернет, сколько дней в данном месяце (ссылки на внешний сайт). daysunderscoreleft: примет три параметра в следующем порядке: день, месяц и год. Следует рассчитать количество дней, оставшихся в году, и вернуть значение количества оставшихся дней. Это не должно включать дату, которую пользователь ввел в счет.

def is_leap_year(year):
    return (year % 4 == 0) and (year % 100 != 0) or (year % 400 == 0)

def days_in_month(month, year):

    if month in ['September', 'April', 'June', 'November']:
        print("30")


    elif month in ['January', 'March', 'May', 'July', 'August','October','December']:
        print("31")

    elif month == 'February' and is_leap_year(year) == True:
        print("29")

    elif month == 'February' and is_leap_year(year) == False:
        print("28")

    else:
        return None

print("Please enter a date: ")
x = int(input("Day: "))
y = str(input("Month: "))

z = str(input("Year: "))

print("Menu:")
o = int(input("1)    Calculate the number of day in the given month. \n2)    Calculate the number of days left in the given year. "))


if(o == "2"):
    print (days_in_month(y,z))

Это то, что я до сих пор. Я не совсем понимаю, как узнать количество дней, оставшихся в месяце и году, и мне просто нужна помощь в этом. Извините за грязный формат, я не знал, как правильно его отформатировать.

1 Ответ

1 голос
/ 26 февраля 2020

Можете ли вы попробовать следующее:

def is_leap_year(year):
    return (year % 4 == 0) and (year % 100 != 0) or (year % 400 == 0)

def days_in_month(day, month, year):
    if month in ['September', 'April', 'June', 'November']:
        return 30 - day
    elif month in ['January', 'March', 'May', 'July', 'August','October','December']:
        return 31 - day
    elif month == 'February' and is_leap_year(year) == True:
        return 29 - day
    elif month == 'February' and is_leap_year(year) == False:
        return 28 - day
    else:
        return None

print("Please enter a date: ")
x = int(input("Day: "))
y = str(input("Month: "))

z = int(input("Year: "))

print("Menu:")
o = int(input("1)    Calculate the number of day in the given month. \n2)    Calculate the number of days left in the given year.\n"))

if(o == 1):
    print (days_in_month(x, y,z))

Это даст вам days left in month.

Вывод:

Please enter a date: 
Day: 15
Month: February
Year: 2020
Menu:
1)    Calculate the number of day in the given month. 
2)    Calculate the number of days left in the given year.
1
14

Удастся найти дни, оставшиеся в году с использованием любой библиотеки python, тогда я могу это сделать ..

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...