#!/usr/bin/env python # -*- coding: utf-8 -*- """ zad. 1 Napisz funkcję, która zwróci sumę elementów w liście. """ def suma(lista): s = 0 for item in lista: s += item return s print(suma([1, 2, 3])) """ zad. 2 Napisz funkcje, która dla przekazanej listy, zwróci listę z niepowtarzającymi się wartościami. """ def unique(lista): pojedyncze = [] for item in lista: if item not in pojedyncze: pojedyncze.append(item) return pojedyncze print(unique([1, 1, 2, 1, 2, 3])) """ zad. 3 Napisz funkcję, która dla przekazanej listy zwróci listę skłdajacą się z elementów na parzystych indeksach. """ def parzyste(lista): return lista[::2] print(parzyste([0, 1, 2, 3, 4, 5])) """ zad. 4 Napisz funkcję, która sprawdzi, czy podany napis (String) jest palindromem, czyli wyrazem, który czytany od końca jest tym samym słowem, np. kajak. """ def is_palindrom(text): for i in range(len(text)): if text[i] != text[-1 - i]: return False return True print(is_palindrom("kajak")) print(is_palindrom("antykajak")) """ zad. 5 Napisz generator, który będzie zwracał n kolejnych liczb ciągu fibonacciego, gdzie n to argument funkcji. """ def fib(n): last = None last_last = None for i in range(n): if i <= 1: last_last = last last = 1 yield 1 else: curr = last_last + last last_last = last last = curr yield curr for i in fib(10): print(i) """ zad. 6 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. """ """ zad. 7 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.Zaw> * Wykorzystaj bibliotekę ``glob`` (https://docs.python.org/2/library/glob.html) * Wyświetl tylko pełną nazwe pliku (wraz z ścieżką). """ import glob values = {} for path in glob.glob("./scores/*"): with open(path) as ff: value = float(ff.read().strip().split(' ')[2][:-1]) values[path] = value print(values) max_key = None for k, v in values.items(): if max_key is None: max_key = k else: if values[max_key] < v: max_key = k print(max_key)