Skip to main content

Аналізатор гонки F1

Project description

Пакет task_6_report

task_6_report — Python package for analyzing Formula 1 race results: loading logs, building reports, output via CLI.


Installation

pip install task_6_report

Using

from race_report.report import RaceData
from pathlib import Path

# Вкажи шлях до папки з файлами
folder = Path(r"your path to the folder/data")

# Ініціалізація RaceData — передаємо шлях до папки як параметр folder
data = RaceData(folder=folder)

# Завантаження даних з файлів start.log, end.log, abbreviations.txt (шляхи утворюються автоматично)
data.load_data()

# Побудова звіту у порядку 'asc' або 'desc'
report = data.build_report(order='asc')

# Вивід звіту в консоль
data.print_report(report)

Required data files:

abbreviations.txt:

DRR_Daniel Ricciardo_RED BULL RACING TAG HEUER
SVF_Sebastian Vettel_FERRARI
LHM_Lewis Hamilton_MERCEDES

start.log:

DRR2018-05-24_12:14:12.054
SVF2018-05-24_12:14:15.145
LHM2018-05-24_12:14:18.035

end.log:

DRR2018-05-24_12:15:26.399
SVF2018-05-24_12:15:29.750
LHM2018-05-24_12:15:33.082

An example of a report:

1. DRR_Daniel Ricciardo | RED BULL RACING TAG HEUER | 1:14.345
2. SVF_Sebastian Vettel | FERRARI | 1:14.788
...

Call in GitBash GitBash (CLI)

To run your report.py file with the --order option, use the following command:

race-report -p PATH_TO_DATA_FOLDER [-o asc|desc] [-d DRIVER_NAME]

Parameters:

  • -p, --path (required): path to the folder with the data files
  • -o, --order (optional): sort order (asc for ascending, desc for descending), default asc
  • -d, --driver (optional): pilot name to display information only for him/her

Examples:

  • Build the full report in ascending order:
race-report -p data/ -o asc
  • Build the full report in descending order:
race-report -p data/ -o desc
  • Get information only about a specific pilot:
race-report -p data/ -d "Sebastian Vettel"

The structure of the project

task_6_report/

├── src/
│   └── race_report/
│       ├── __init__.py
│       ├── report.py
│       └── cli.py
│
├── tests/
│   ├── __init__.py
│   ├── tests_load_data/
│   ├── tests_build_report/
│   ├── tests_print_report/
│   ├── tests_read_abbreviations/
│   └── tests_cli/
│
├── LICENSE
├── pyproject.toml
├── README.md
└── .gitignore

License

This project is licensed under the MIT License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

task_6_report-0.4.2.tar.gz (8.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

task_6_report-0.4.2-py3-none-any.whl (8.5 kB view details)

Uploaded Python 3

File details

Details for the file task_6_report-0.4.2.tar.gz.

File metadata

  • Download URL: task_6_report-0.4.2.tar.gz
  • Upload date:
  • Size: 8.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for task_6_report-0.4.2.tar.gz
Algorithm Hash digest
SHA256 144ce6747e4124fad175370a25323f589e5cf901ef144a52653ff35902f8b390
MD5 7a08546e47163c69a905b3a7b30d0448
BLAKE2b-256 af50e25efdd34adfb6a577e9ef60c0eb3e65ed802c2d3cbdad34cf480f16152e

See more details on using hashes here.

File details

Details for the file task_6_report-0.4.2-py3-none-any.whl.

File metadata

  • Download URL: task_6_report-0.4.2-py3-none-any.whl
  • Upload date:
  • Size: 8.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for task_6_report-0.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 42695dd9a46f7af270a882fadee71e903ba7e90b37f08f1ad83d926b1f3921f1
MD5 8a1f652a50a7632764c7a46bacf475f2
BLAKE2b-256 b59ac6b4d2e0763d61bc16d1e622bdc9b021145b218e1fd3e07b8dac64a73b20

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page