Advertisement
Guest User

Untitled

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