From 228f4fac1a7ebe40686e6adb24626e80b55f1431 Mon Sep 17 00:00:00 2001 From: Willian Lopes Date: Tue, 12 Oct 2021 12:26:50 -0300 Subject: [PATCH 1/7] #1032: Implements CLI calc python argparser --- .../CLI Calculator/calc/__init__.py | 3 ++ .../CLI Calculator/calc/args.py | 29 +++++++++++++++++++ .../CLI Calculator/calc/calc.py | 22 ++++++++++++++ .../CLI Calculator/tests/test_calc.py | 28 ++++++++++++++++++ 4 files changed, 82 insertions(+) create mode 100644 BasicPythonScripts/CLI Calculator/calc/__init__.py create mode 100644 BasicPythonScripts/CLI Calculator/calc/args.py create mode 100644 BasicPythonScripts/CLI Calculator/calc/calc.py create mode 100644 BasicPythonScripts/CLI Calculator/tests/test_calc.py diff --git a/BasicPythonScripts/CLI Calculator/calc/__init__.py b/BasicPythonScripts/CLI Calculator/calc/__init__.py new file mode 100644 index 000000000..7383c1c62 --- /dev/null +++ b/BasicPythonScripts/CLI Calculator/calc/__init__.py @@ -0,0 +1,3 @@ +from .calc import sub, mult, div, soma + +__all__ = ['sub', 'mult', 'div', 'soma'] diff --git a/BasicPythonScripts/CLI Calculator/calc/args.py b/BasicPythonScripts/CLI Calculator/calc/args.py new file mode 100644 index 000000000..f5c2d4fe9 --- /dev/null +++ b/BasicPythonScripts/CLI Calculator/calc/args.py @@ -0,0 +1,29 @@ +"""Calculadora utilizando ArgumentParser.""" + +from argparse import ArgumentParser + +from calc import soma, sub, mult, div + + +parser = ArgumentParser(description='Calculadora') + +parser.add_argument('--sum', help='Operação de soma', action='store_true') +parser.add_argument('--sub', help='Operação de subtração', action='store_true') +parser.add_argument('--mult', help='Operação de multiplicação', action='store_true') +parser.add_argument('--div', help='Operação de divisão', action='store_true') +parser.add_argument('x', type=int, help='Primeiro valor') +parser.add_argument('y', type=int, help='Segundo valor') + +args = parser.parse_args() + +if args.sum: + print(f'{soma(args.x, args.y)}') + +if args.sub: + print(f'{sub(args.x, args.y)}') + +if args.mult: + print(f'{mult(args.x, args.y)}') + +if args.div: + print(f'{div(args.x, args.y)}') diff --git a/BasicPythonScripts/CLI Calculator/calc/calc.py b/BasicPythonScripts/CLI Calculator/calc/calc.py new file mode 100644 index 000000000..d424dbe83 --- /dev/null +++ b/BasicPythonScripts/CLI Calculator/calc/calc.py @@ -0,0 +1,22 @@ + +def soma(x :int, y: int) -> int: + """Função de soma.""" + return x + y + + +def sub(x :int, y: int) -> int: + """Função de subtração.""" + return x - y + +def mult(x :int, y: int) -> int: + """Função de multiplicação.""" + return x * y + + +def div(x :int, y: int) -> int: + """Função de divisão.""" + try: + return x / y + + except ZeroDivisionError: + return 'Divisao por zero mal sucedida!!' diff --git a/BasicPythonScripts/CLI Calculator/tests/test_calc.py b/BasicPythonScripts/CLI Calculator/tests/test_calc.py new file mode 100644 index 000000000..13212e4cc --- /dev/null +++ b/BasicPythonScripts/CLI Calculator/tests/test_calc.py @@ -0,0 +1,28 @@ +from unittest import TestCase + +from calc import soma, sub, mult, div + + +class testCalc(TestCase): + def test_should_return_two_values_sum(self): + esperado = 1 + 2 + self.assertEqual(esperado, soma(1,2)) + + + def test_should_return_two_values_sub(self): + esperado = 1 - 2 + self.assertEqual(esperado, sub(1,2)) + + + def test_should_return_two_values_mult(self): + esperado = 1 * 2 + self.assertEqual(esperado, mult(1,2)) + + def test_should_return_two_values_div(self): + esperado = 1 / 2 + self.assertEqual(esperado, div(1,2)) + + + def test_should_return_exceptio_on_division_by_zero(self): + esperado = 'Divisao por zero mal sucedida!!' + self.assertEqual(esperado, div(1,0)) From 4961ed57919d4a8874039724757e176b723f448d Mon Sep 17 00:00:00 2001 From: Willian Lopes Date: Tue, 12 Oct 2021 12:27:42 -0300 Subject: [PATCH 2/7] #1032: Add pycache to git ignore file --- BasicPythonScripts/CLI Calculator/.gitignore | 1 + 1 file changed, 1 insertion(+) create mode 100644 BasicPythonScripts/CLI Calculator/.gitignore diff --git a/BasicPythonScripts/CLI Calculator/.gitignore b/BasicPythonScripts/CLI Calculator/.gitignore new file mode 100644 index 000000000..4bae5a6a8 --- /dev/null +++ b/BasicPythonScripts/CLI Calculator/.gitignore @@ -0,0 +1 @@ +*/__pycache__ From 618ebab01a2ec12f0af8ffad0c2c06220b9d484c Mon Sep 17 00:00:00 2001 From: Willian Lopes Date: Tue, 12 Oct 2021 12:28:15 -0300 Subject: [PATCH 3/7] #1032: Add project instructions --- BasicPythonScripts/CLI Calculator/README.md | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 BasicPythonScripts/CLI Calculator/README.md diff --git a/BasicPythonScripts/CLI Calculator/README.md b/BasicPythonScripts/CLI Calculator/README.md new file mode 100644 index 000000000..c05cf4b74 --- /dev/null +++ b/BasicPythonScripts/CLI Calculator/README.md @@ -0,0 +1,17 @@ +# calc_argparser +CLI Calculator + +# Instructions +To run CLI_Calculator execute: + +- `python calc/args.py -h` - For help +- `python calc/args.py --sum x y` - To sum two numbers +- `python calc/args.py --sub x y` - To substraction two numbers +- `python calc/args.py --mult x y` - To multiplication two numbers +- `python calc/args.py --div x y` - To divide two numbers + + +To run tests execute: +```shell +python -m unittest discover tests +``` From 26668db709187818b0618298f59572cf6f159a04 Mon Sep 17 00:00:00 2001 From: Willian Lopes Date: Tue, 12 Oct 2021 12:41:10 -0300 Subject: [PATCH 4/7] #1032: Add project link on README --- BasicPythonScripts/README.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/BasicPythonScripts/README.md b/BasicPythonScripts/README.md index 4b821c921..206c0b54c 100644 --- a/BasicPythonScripts/README.md +++ b/BasicPythonScripts/README.md @@ -46,5 +46,4 @@ - [Stock Visualizer](https://github.com/prathimacode-hub/Awesome_Python_Scripts/tree/main/BasicPythonScripts/Stock%20Visualiser) - [Stone Paper Pencil Rubber Scissor](https://github.com/prathimacode-hub/Awesome_Python_Scripts/tree/main/BasicPythonScripts/Stone%20Paper%20Pencil%20Rubber%20Scissor) - [Word Cloud](https://github.com/prathimacode-hub/Awesome_Python_Scripts/tree/main/BasicPythonScripts/Word%20Cloud) - - +- [CLI Calculator](https://github.com/prathimacode-hub/Awesome_Python_Scripts/tree/main/BasicPythonScripts/CLI%20Calculator) From 6c030ed1fd339165590eec25d62582ad35e3ba4e Mon Sep 17 00:00:00 2001 From: Willian Lopes Date: Tue, 12 Oct 2021 13:06:10 -0300 Subject: [PATCH 5/7] #1032: Translate docstrings, functions and help --- BasicPythonScripts/CLI Calculator/README.md | 6 +++--- .../CLI Calculator/calc/__init__.py | 4 ++-- .../CLI Calculator/calc/args.py | 20 +++++++++---------- .../CLI Calculator/calc/calc.py | 20 ++++++++++--------- 4 files changed, 26 insertions(+), 24 deletions(-) diff --git a/BasicPythonScripts/CLI Calculator/README.md b/BasicPythonScripts/CLI Calculator/README.md index c05cf4b74..98442ebb6 100644 --- a/BasicPythonScripts/CLI Calculator/README.md +++ b/BasicPythonScripts/CLI Calculator/README.md @@ -1,13 +1,13 @@ # calc_argparser CLI Calculator -# Instructions +## Instructions To run CLI_Calculator execute: - `python calc/args.py -h` - For help - `python calc/args.py --sum x y` - To sum two numbers -- `python calc/args.py --sub x y` - To substraction two numbers -- `python calc/args.py --mult x y` - To multiplication two numbers +- `python calc/args.py --sub x y` - To subtract two numbers +- `python calc/args.py --mult x y` - To multiply two numbers - `python calc/args.py --div x y` - To divide two numbers diff --git a/BasicPythonScripts/CLI Calculator/calc/__init__.py b/BasicPythonScripts/CLI Calculator/calc/__init__.py index 7383c1c62..6ee7e5652 100644 --- a/BasicPythonScripts/CLI Calculator/calc/__init__.py +++ b/BasicPythonScripts/CLI Calculator/calc/__init__.py @@ -1,3 +1,3 @@ -from .calc import sub, mult, div, soma +from .calc import sub, mult, div, sum_ -__all__ = ['sub', 'mult', 'div', 'soma'] +__all__ = ['sub', 'mult', 'div', 'sum_'] diff --git a/BasicPythonScripts/CLI Calculator/calc/args.py b/BasicPythonScripts/CLI Calculator/calc/args.py index f5c2d4fe9..1d742d4bb 100644 --- a/BasicPythonScripts/CLI Calculator/calc/args.py +++ b/BasicPythonScripts/CLI Calculator/calc/args.py @@ -1,23 +1,23 @@ -"""Calculadora utilizando ArgumentParser.""" +"""CLI Calculator using ArgumentParser.""" from argparse import ArgumentParser -from calc import soma, sub, mult, div +from calc import sum_, sub, mult, div -parser = ArgumentParser(description='Calculadora') +parser = ArgumentParser(description='Calculator') -parser.add_argument('--sum', help='Operação de soma', action='store_true') -parser.add_argument('--sub', help='Operação de subtração', action='store_true') -parser.add_argument('--mult', help='Operação de multiplicação', action='store_true') -parser.add_argument('--div', help='Operação de divisão', action='store_true') -parser.add_argument('x', type=int, help='Primeiro valor') -parser.add_argument('y', type=int, help='Segundo valor') +parser.add_argument('--sum', help='Sum operation', action='store_true') +parser.add_argument('--sub', help='Subtraction operation', action='store_true') +parser.add_argument('--mult', help='Multiplication operation', action='store_true') +parser.add_argument('--div', help='Division operation', action='store_true') +parser.add_argument('x', type=int, help='First value') +parser.add_argument('y', type=int, help='Second value') args = parser.parse_args() if args.sum: - print(f'{soma(args.x, args.y)}') + print(f'{sum_(args.x, args.y)}') if args.sub: print(f'{sub(args.x, args.y)}') diff --git a/BasicPythonScripts/CLI Calculator/calc/calc.py b/BasicPythonScripts/CLI Calculator/calc/calc.py index d424dbe83..97004cd27 100644 --- a/BasicPythonScripts/CLI Calculator/calc/calc.py +++ b/BasicPythonScripts/CLI Calculator/calc/calc.py @@ -1,22 +1,24 @@ -def soma(x :int, y: int) -> int: - """Função de soma.""" + +def sum_(x: int, y: int) -> int: + """Sum function.""" return x + y -def sub(x :int, y: int) -> int: - """Função de subtração.""" +def sub(x: int, y: int) -> int: + """Substration function.""" return x - y -def mult(x :int, y: int) -> int: - """Função de multiplicação.""" + +def mult(x: int, y: int) -> int: + """Multiplication function.""" return x * y -def div(x :int, y: int) -> int: - """Função de divisão.""" +def div(x: int, y: int) -> int: + """Division function.""" try: return x / y except ZeroDivisionError: - return 'Divisao por zero mal sucedida!!' + return "Division by zero isn't possible!!" From bc23af88e03357445f159b765d4dd291c398f500 Mon Sep 17 00:00:00 2001 From: Willian Lopes Date: Sat, 16 Oct 2021 00:48:50 -0300 Subject: [PATCH 6/7] Fix README informations --- BasicPythonScripts/CLI Calculator/README.md | 55 +++++++++++++++++++-- 1 file changed, 50 insertions(+), 5 deletions(-) diff --git a/BasicPythonScripts/CLI Calculator/README.md b/BasicPythonScripts/CLI Calculator/README.md index 98442ebb6..b16e5a8e2 100644 --- a/BasicPythonScripts/CLI Calculator/README.md +++ b/BasicPythonScripts/CLI Calculator/README.md @@ -1,10 +1,20 @@ -# calc_argparser -CLI Calculator +# CLI Calculator -## Instructions -To run CLI_Calculator execute: +## Aim -- `python calc/args.py -h` - For help +Calculator via CLI made with Python built-in Argparser + + +## Purpose + +Learn tests and Python Argparser + + +## Short description of package/script + +To run CLI Calculator execute: + +- `python calc/args.py --help` - For help - `python calc/args.py --sum x y` - To sum two numbers - `python calc/args.py --sub x y` - To subtract two numbers - `python calc/args.py --mult x y` - To multiply two numbers @@ -15,3 +25,38 @@ To run tests execute: ```shell python -m unittest discover tests ``` + + +## Workflow of the Project + +You can execute `python calc/args.py --help` to check all available commands + + +## Setup instructions + +This project is using a Python built-in library, no external package is needed + + +## Compilation Steps + +This project doesn't need to be compiled. + + +## Output + +Display images/gifs/videos of output/result of your script so that users can visualize it + + +## Conclusion + +This project helped me to know new functionalities of Python and understand the unittest skeleton + + +## Author(s) + +Willian Lopes + + +## Disclaimers, if any + +Use this section to mention if any particular disclaimer is required From 1d73069225616b8bfae5bf6a77d580437b21d2a1 Mon Sep 17 00:00:00 2001 From: Willian Lopes Date: Sat, 16 Oct 2021 00:54:48 -0300 Subject: [PATCH 7/7] Add output prints on README --- BasicPythonScripts/CLI Calculator/README.md | 6 +++++- .../CLI Calculator/calc_argparser.png | Bin 0 -> 5773 bytes .../CLI Calculator/calc_argparser_help.png | Bin 0 -> 43935 bytes 3 files changed, 5 insertions(+), 1 deletion(-) create mode 100644 BasicPythonScripts/CLI Calculator/calc_argparser.png create mode 100644 BasicPythonScripts/CLI Calculator/calc_argparser_help.png diff --git a/BasicPythonScripts/CLI Calculator/README.md b/BasicPythonScripts/CLI Calculator/README.md index b16e5a8e2..aab3c3326 100644 --- a/BasicPythonScripts/CLI Calculator/README.md +++ b/BasicPythonScripts/CLI Calculator/README.md @@ -44,7 +44,11 @@ This project doesn't need to be compiled. ## Output -Display images/gifs/videos of output/result of your script so that users can visualize it +**Sum function** +![calc_argparser](./calc_argparser.png) + +**Help** +![calc_argparser_help](./calc_argparser_helper.png) ## Conclusion diff --git a/BasicPythonScripts/CLI Calculator/calc_argparser.png b/BasicPythonScripts/CLI Calculator/calc_argparser.png new file mode 100644 index 0000000000000000000000000000000000000000..e676c2cb1d953d963da4276e476fc6dfaf695753 GIT binary patch literal 5773 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