Advertisement
Guest User

Untitled

a guest
Jan 23rd, 2020
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.35 KB | None | 0 0
  1. from datetime import datetime, timedelta
  2. from colorama import Fore
  3.  
  4. easy = Fore.GREEN
  5. medium = Fore.YELLOW
  6. hard = Fore.MAGENTA
  7. impossible = Fore.RED
  8.  
  9. subjects = [medium + 'Английский язык', impossible + 'Биология', medium + 'География', impossible + 'Информатика',
  10. hard + 'История', easy + 'Литература', hard + 'Математика', medium + 'Обществознание', easy + 'ОБЖ',
  11. hard + 'Русский язык', impossible + 'Физика', easy + 'Физ-ра', medium + 'Химия']
  12.  
  13. weekdays = ['понедельник', 'вторник', 'среду', 'четверг', 'пятницу']
  14.  
  15. for subj in subjects:
  16. subjects[subjects.index(subj)] += Fore.RESET
  17.  
  18.  
  19. timetable = [[1, 0, 4, 10, 6, 9, 5],
  20. [7, 0, 6, 8, 9, 9, 2],
  21. [0, 4, 11, 5, 12, 5],
  22. [11, 7, 3, 1, 6, 6, 0],
  23. [2, 7, 6, 12, 10, 6]]
  24.  
  25. lesson_duration = timedelta(minutes=40)
  26. lessons_time = ['8:30', '9:20', '10:15', '11:10', '12:05', '13:00', '13:55']
  27.  
  28. for time in lessons_time:
  29. lessons_time[lessons_time.index(time)] = datetime.strptime(time, '%H:%M')
  30.  
  31.  
  32. def show_all_subjects():
  33. for subject in subjects:
  34. print(str(subjects.index(subject)) + ') ' + subject)
  35.  
  36.  
  37. def show_next_lessons(day=datetime.now().isoweekday()):
  38. now_time = datetime.now().time()
  39. now_time = datetime.strptime('8:40', '%H:%M').time()
  40.  
  41. day -= 1
  42. if day > 4:
  43. print('Сеголня нет уроков')
  44. else:
  45. print('Расписание на сегодня:')
  46. i = 1
  47. for subject in timetable[day]:
  48.  
  49. lesson_start_time = lessons_time[timetable[day].index(subject)].time()
  50.  
  51. if now_time < lesson_start_time:
  52. print(str(i) + ') ' + subjects[subject])
  53. i += 1
  54.  
  55. day += 1
  56. if day > 4:
  57. day = 0
  58. i = 1
  59. print('\n\nРасписание на ' + weekdays[day] + ':')
  60. for subject in timetable[day]:
  61. print(str(i) + ') ' + subjects[subject])
  62. i += 1
  63.  
  64.  
  65. def show_current_lesson(day=datetime.now().isoweekday()):
  66. now_time = datetime.now()
  67. now_time = datetime.strptime('9:13', '%H:%M')
  68.  
  69. day -= 1
  70.  
  71. if not day > 4:
  72. for subject in timetable[day]:
  73.  
  74. lesson_start_time = lessons_time[timetable[day].index(subject)]
  75. lesson_end_time = (lessons_time[timetable[day].index(subject)] + lesson_duration)
  76.  
  77. if lesson_start_time.time() < now_time.time() < lesson_end_time.time():
  78. print('Сейчас: ' + subjects[subject] + Fore.RESET)
  79. print('Закончится через ' + Fore.CYAN +
  80. str(round((lesson_end_time - now_time).seconds / 60)) + ' мин\n' + Fore.RESET)
  81. break
  82. elif now_time.time() < lesson_start_time.time():
  83. print(subjects[subject] + ' начнётся через: ' +
  84. Fore.CYAN + str(round((lesson_start_time - now_time).seconds / 60)) + ' мин\n' + Fore.RESET)
  85. break
  86.  
  87.  
  88. def show_time():
  89. now_time = datetime.now()
  90. now_time = datetime.strptime('8:40', '%H:%M')
  91. print('Время: ' + Fore.CYAN + datetime.strftime(now_time, '%H:%M') + Fore.RESET)
  92.  
  93.  
  94. show_time()
  95. show_current_lesson()
  96. show_next_lessons()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement