1
0
forked from tdwojak/Python2017
Python2017/labs05
2018-01-26 14:57:33 +01:00
..
tools Add labs 05 2017-12-16 06:21:44 +01:00
__init__.py Add labs 05 2017-12-16 06:21:44 +01:00
argparse_min.py Update ar_parse 2017-12-16 06:22:18 +01:00
Lab05.ipynb done 2018-01-26 14:27:56 +01:00
lib.py Add labs 05 2017-12-16 06:21:44 +01:00
main.py Add labs 05 2017-12-16 06:21:44 +01:00
README.md Add labs 05 2017-12-16 06:21:44 +01:00
task00.py done 2018-01-26 14:57:33 +01:00
task01.py done 2018-01-26 14:57:33 +01:00
task02.py done 2018-01-26 14:57:33 +01:00
task03.py done 2018-01-26 14:43:35 +01:00
task04.py done 2018-01-26 14:57:33 +01:00

** zad. 0 ** Napisz funkcję suma, która przyjmnie jeden argument: listę liczb i zwróci ich sumę.

** zad. 1 ** Zaimportuj z zadania 0 fukcje suma. Korzystając z tej fukcji i tablicy sys.argv oblicz i wyświetl sumę argumentów, jakie zostały przekazane do proramu. Załóź, że argumentami do programu będą tylko liczby zmiennoprzecinkowe.

** zad. 2 ** Uodpornoj program z zad. 1 w następujący sposób: do programu mogą zostać przekazane argumenty, które nie mają wartości liczbowej (przyjmijmy, że ich wartość to 0). Skorzystaj z mechanizmu wyjątków: złap wyjątek, jeżeli argumenty nie da się skonwertować na liczbę zmiennoprzecinkową.

** zad. 3 ** Przekształć rozwiązanie zadania drugiego w taki sposob, żeby korzystało z biblioteki argparse zamiast z z listy sys.argv.

** zad. 4 (Domowe) ** Plik task04.py zawiera kod prorgamu, który działa jak popularne narzędzie unixowe wc (Word Counter): zlicza liczbę linii, wyrazów i znaków. Aktualnie program potrafi działać wyłącznie na wejściu podanym z klawiatury. Dodaj do niego opcje programu:

  • domyślnie program ma zliczać na wejściu z klawiatury (stdin) i wyświetlać wszystkie 3 liczby.
  • Jeżeli został podany przełącznik -l, to to ma zostać zwrócona tylko liczba linii.
  • Jeżeli został podany przełącznik -w, to to ma zostać zwrócona tylko liczba słów.
  • Jeżeli został podany przełącznik -c, to to ma zostać zwrócona tylko liczba znaków.
  • Jeżeli został podany inny argument, to należy założyć że jest to nazwa pliku i potraktować ten plik jako wejście do programu.