forked from tdwojak/Python2017
f1ed9dbaad
# Conflicts: # labs02/test_task.py
39 lines
2.2 KiB
Markdown
39 lines
2.2 KiB
Markdown
# Laboratoria 3
|
|
|
|
## Zadania
|
|
|
|
**ćwiczenie 0**
|
|
Sklonuj repozytorium ``https://github.com/realpython/python-scripts``, które różne, przydatne skrypty. Przejrzyj je i zobacz na ile jesteś w stanie zrozumieć co i jak robią. Uruchom kilka z nich, np. ``27_send_sms.py``.
|
|
|
|
**ćwiczenie 1**
|
|
Każdy obiekt w Pythonie na wbudowaną funkcję ``id()``, która zwraca liczbę, która jest unikatowa i stała dla obiektu.
|
|
Pozwala ona w prosty sposób sprawdzić, który obiekt jest *mutable*a, który *immutable*: jeżeli po wykonaniu operacji,
|
|
zwracana liczba jest stała, to oznacza, że obiekt jest *mutable*. Sprawdź zachowanie funkcji na obiektach typy:
|
|
* lista,
|
|
* napis (string),
|
|
* liczba zmiennoprzecinkowa.
|
|
|
|
**ćwiczenie 2**
|
|
Napisz generator, który będzie zwracać ``n`` kolejnych liczb ciągu Fibonacciego (``F(0)=1, F(1)=1, FN=F(N-1) + F(N-2)``).
|
|
|
|
**ćwiczenie 3**
|
|
Strona ``https://api.fixer.io/latest`` udostępnia kursy różnych walut w stosunku do euro. Napisz skrypt, który:
|
|
* pobierze zawartość JSONa. Wykorzystaj bibliotekę ``requests`` (http://docs.python-requests.org/en/master/).
|
|
* korzystając z biblioteki ``json`` przekształć go do obiketu typu JSON.
|
|
* Wyświetl wartość kursu EUR do PLN.
|
|
|
|
**ćwiczenie 4**
|
|
Zainstaluj bibliotekę ``weather-api`` (https://pypi.python.org/pypi/weather-api). Korzystając z niej:
|
|
* Wypisz informacje o aktualnej pogodzie.
|
|
* Napisz funkcję, która zamieni stopnie ``F`` na ``C``.
|
|
* Korzystając z prognozy, znajdź dzień, w którym będzie najzimniej. Wypisz nazwę tygodnia (w języku polskim) i temperaturę w C.
|
|
|
|
**ćwiczenie 5**
|
|
Katalog scores zawiera 64 pliki tekstowe, które posiadają informacje o wysokości miary ``BLEU`` na różnych etapach trenowania modelu. Nazwa każdego pliku na postać ``model.iterXXXXXXX.npz.bleu``, gdzie ``XXXXXXX``, to liczba iteracji.Zawartość każdego pliku jest podobna i ma następującą formę: *BLEU = YY.YY, 44.4/18.5/9.3/5.0 (BP=1.000, ratio=1.072, hyp_len=45976, ref_len=42903)*, gdzie ``YY.YY`` to wartość miary ``BLEU``. Znajdź plik, który zawiera najwyższą wartość miary ``BLEU``.
|
|
* Wykorzystaj bibliotekę ``glob`` (https://docs.python.org/2/library/glob.html)
|
|
* Wyświetl tylko pełną nazwe pliku (wraz z ścieżką).
|
|
|
|
|
|
|
|
|