2. Другий етап виконання курсової роботи - kubatska/ski-weather-project GitHub Wiki
- Система має надавати користувачу змогу обрати територію (державу), про гірськолижні курорти якої буде здійснюватися аналіз.
- Користувач має мати змогу вказати дату у певному форматі.
- Якщо користувач не вкаже потрібну йому дату, аналіз погодних умов буде здійснений на час, коли він(користувач) скористається програмою.
- Користувач не потребує авторизації.
- Система має правильно враховувати та аналізувати потрібні вхідні дані, а саме: запити користувача, списки гірськолижних курортів, збережені у форматі txt, та дані, про погодні умови, отримані у форматі JSON.
- Якщо формат написання назви локації не відповідає необхідному для отримання погодних даних формату, програма має перетворювати його у відповідний вигляд.
- Програма має повертати відповідь у доступному для розуміння вигляді.
- Якщо у системі під час оброблення погодних даних виникає помилка програма повинна не зупиняти роботу, а переходити до наступних одиниць даних.
- Програма має бути написана в такому вигляді, щоб легко можна було додавати додаткові функції.
- Цикл записування даних у файл JSON не повинен перевищувати 5 c.
- Програма повинна повертати результат не більше, ніж за 7 с.
- Програма має бути доступна 24 години на добу.
- Система обчислень повинна здійснювати розрахунки з точністю до тисячних.
- Програма повинна бути розроблена мовою програмування PYTHON відповідно до стильових правил коду PEP8.
- Програма має працювати з даними про погодні умови прогнозовані в межах 5 діб.
- Програма має охоплювати найбільш відомі гірськолижні курорти у світі. Списки гірськолижних курортів базуються на даних отриманих з Вікіпедії.
- Точність даних про погодні прогнози має бути не менша за 60%.
Дані, які вводить користувач, мають бути типів str та int.
Дані про гірськолижні курорти програма буде отримувати з файлу “data_resorts.txt”.
- Приклад структури бази даних про гірськолижні курорти:
Andorra, Grandvalira-Grau Roig
(Країна, локація)
Дані про погодні умови програма буде отримувати за допомогою API у форматі JSON. Приклад структури JSON файла, у якому зберігаються погодні дані, прогнозовані на території, вибраній користувачем:
- {
- "resorts":[{
- "HighFens":{
- "data":{
- “resorts”:{[{
- “Petzen”:{
- data:{]}
- “Petzen”:{
- “resorts”:{[{
- "data":{
- "HighFens":{
Опис можливостей модулів, пакунків модулів, бібліотек, які будуть використовуватися для роботи з даними у програмі, що проектується
Під час роботи над проектом я використовуватиму модуль JSON. Він дозволяє створювати json-об'єкти і працювати з ними. Я буду використовувати наступні методи з даного модуля:
- json.load() - перетворює об'єкт JSON (який підтримує читання з файлу) до об'єкта Python.
- json.loads() - перетворює JSON файл у відповідний йому python об'єкт
- json.dump() - перетворює об'єкт до форматованого потоку JSON (який підтримує запис у файл).
- json.dumps() - перетворює об'єкт у форматований рядок JSON.