1"""Засега толкова."""
2"""Без лоши чувства."""
3"""https://www.youtube.com/watch?v=7_pRiUfp938"""
4"""https://www.youtube.com/watch?v=ZmInkxbvlCs"""
5
6
7def курс_в_лева (dict):
8 cours_v_leva_dict = {}
9 for key in dict:
10 cours_v_leva_dict[key] = round(1 / dict[key], 4)
11 return cours_v_leva_dict
12
13exchange_rates = {"EUR": 1.9558, "USD": 1.6718, "DKK": 0.2616}
14
15курс_в_лева(exchange_rates)
16
17def валута_към_левчета (amount, exchange_rates):
18 valuta_kym_levcheta_dict = {}
19 euro_currency = "EUR"
20 if dict[euro_currency] == 0.5113:
21 exchange_rates = курс_в_лева(exchange_rates)
22 print(exchange_rates)
23 for key in amount:
24 key_in_amount = key[0]
25 print(exchange_rates)
26 valuta_kym_levcheta_dict[key[0]] = round(key[1] * (exchange_rates[key_in_amount]), 4)
27 print(valuta_kym_levcheta_dict)
28 return valuta_kym_levcheta_dict
29
30exchange_rates_1 = {"EUR": 0.5113, "USD": 0.5982, "DKK": 3.8226}
31amount = [("EUR", 1.34), ("USD", 10.23), ("DKK", 0.12), ("EUR", 1.5)]
32
33
34def е_патриотична (amount, exchange_rates):
35 valuta_kym_levcheta_dict = {}
36 валута_към_левчета (amount, exchange_rates)
37 print(valuta_kym_levcheta_dict)
38
39е_патриотична(amount, exchange_rates_1)
{'EUR': 0.5113, 'USD': 0.5982, 'DKK': 3.8226}
{'EUR': 0.5113, 'USD': 0.5982, 'DKK': 3.8226}
{'EUR': 0.5113, 'USD': 0.5982, 'DKK': 3.8226}
{'EUR': 0.5113, 'USD': 0.5982, 'DKK': 3.8226}
{'EUR': 0.767, 'USD': 6.1196, 'DKK': 0.4587}
{}
EEEEE.F
Stdout:
{'KRW': 872.4512, 'INR': 54.846}
{'KRW': 872.4512, 'INR': 54.846}
{'KRW': 8724512.0, 'INR': 266332.176}
{}
F
Stdout:
{'ASL': 10, 'PLS': 0.1}
{'ASL': 10, 'PLS': 0.1}
{'ASL': 100, 'PLS': 0.5}
{}
..
======================================================================
ERROR: test_валута_към_левчета_conversion (test.TestВалутаКъмЛевчета.test_валута_към_левчета_conversion)
Entries should be converted to BGN.
----------------------------------------------------------------------
Traceback (most recent call last):
File "/tmp/test.py", line 91, in test_валута_към_левчета_conversion
in_leva = валута_към_левчета(
("THB", 100),
...<2 lines>...
ZAR=0.1,
)
TypeError: валута_към_левчета() got an unexpected keyword argument 'THB'
======================================================================
ERROR: test_валута_към_левчета_rounding (test.TestВалутаКъмЛевчета.test_валута_към_левчета_rounding)
Output should be rounded to the 4th digit after the decimal point.
----------------------------------------------------------------------
Traceback (most recent call last):
File "/tmp/test.py", line 102, in test_валута_към_левчета_rounding
in_leva = валута_към_левчета(
("SGD", 5),
...<2 lines>...
SGD=0.759,
)
TypeError: валута_към_левчета() got an unexpected keyword argument 'PHP'
======================================================================
ERROR: test_валута_към_левчета_sums (test.TestВалутаКъмЛевчета.test_валута_към_левчета_sums)
Entries for the same currency should be summed up.
----------------------------------------------------------------------
Traceback (most recent call last):
File "/tmp/test.py", line 78, in test_валута_към_левчета_sums
in_leva = валута_към_левчета(
("JPY", 10),
...<4 lines>...
TRY=1,
)
TypeError: валута_към_левчета() got an unexpected keyword argument 'JPY'
======================================================================
ERROR: test_валута_към_левчета_takes_variable_length_args (test.TestВалутаКъмЛевчета.test_валута_към_левчета_takes_variable_length_args)
Function should take a variable length of args and kwargs.
----------------------------------------------------------------------
Traceback (most recent call last):
File "/tmp/test.py", line 48, in test_валута_към_левчета_takes_variable_length_args
валута_към_левчета(
~~~~~~~~~~~~~~~~~~^
("EUR", 1.5),
^^^^^^^^^^^^^
...<12 lines>...
JPY=7,
^^^^^^
)
^
TypeError: валута_към_левчета() got an unexpected keyword argument 'EUR'
======================================================================
ERROR: test_валута_към_левчета_with_bgn (test.TestВалутаКъмЛевчета.test_валута_към_левчета_with_bgn)
Entries with BGN should be converted 1:1.
----------------------------------------------------------------------
Traceback (most recent call last):
File "/tmp/test.py", line 68, in test_валута_към_левчета_with_bgn
in_leva = валута_към_левчета(
("HUF", 10),
("BGN", 10000.5),
HUF=1,
)
TypeError: валута_към_левчета() got an unexpected keyword argument 'HUF'
======================================================================
FAIL: test_е_патриотична_стотинки (test.TestЕПатриотична.test_е_патриотична_стотинки)
The total should be evaluated with a precision of 2 digits after the decimal point.
----------------------------------------------------------------------
Traceback (most recent call last):
File "/tmp/test.py", line 132, in test_е_патриотична_стотинки
self.assertEqual("ПАТРИОТИЧНА!", патриотична)
~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: 'ПАТРИОТИЧНА!' != None
Stdout:
{'KRW': 872.4512, 'INR': 54.846}
{'KRW': 872.4512, 'INR': 54.846}
{'KRW': 8724512.0, 'INR': 266332.176}
{}
======================================================================
FAIL: test_е_патриотична_цели (test.TestЕПатриотична.test_е_патриотична_цели)
The total should be evaluated by means of whether the sum is a round number.
----------------------------------------------------------------------
Traceback (most recent call last):
File "/tmp/test.py", line 118, in test_е_патриотична_цели
self.assertEqual("ПАТРИОТИЧНА!", патриотична)
~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: 'ПАТРИОТИЧНА!' != None
Stdout:
{'ASL': 10, 'PLS': 0.1}
{'ASL': 10, 'PLS': 0.1}
{'ASL': 100, 'PLS': 0.5}
{}
----------------------------------------------------------------------
Ran 10 tests in 0.002s
FAILED (failures=2, errors=5)
Светлозар Йовчев
11.03.2026 19:26Thanks и извинявай, пропуснал съм този print. Имаше още :D
Имаше нещо с подаваните exchange_rates. Явно не винаги ще са подавани към валутата, затова и проверката за "EUR" == 0.5113.
Хубаво е, че има лог от тестовете. Ще се оправя по тях :)
|
| f | 1 | """Засега толкова.""" | f | 1 | """Засега толкова.""" |
| 2 | """Без лоши чувства.""" | 2 | """Без лоши чувства.""" | ||
| 3 | """https://www.youtube.com/watch?v=7_pRiUfp938""" | 3 | """https://www.youtube.com/watch?v=7_pRiUfp938""" | ||
| 4 | """https://www.youtube.com/watch?v=ZmInkxbvlCs""" | 4 | """https://www.youtube.com/watch?v=ZmInkxbvlCs""" | ||
| 5 | 5 | ||||
| 6 | 6 | ||||
| n | 7 | def cours_v_leva (dict): | n | 7 | def курс_в_лева (dict): |
| 8 | cours_v_leva_dict = {} | 8 | cours_v_leva_dict = {} | ||
| 9 | for key in dict: | 9 | for key in dict: | ||
| 10 | cours_v_leva_dict[key] = round(1 / dict[key], 4) | 10 | cours_v_leva_dict[key] = round(1 / dict[key], 4) | ||
| 11 | return cours_v_leva_dict | 11 | return cours_v_leva_dict | ||
| 12 | 12 | ||||
| 13 | exchange_rates = {"EUR": 1.9558, "USD": 1.6718, "DKK": 0.2616} | 13 | exchange_rates = {"EUR": 1.9558, "USD": 1.6718, "DKK": 0.2616} | ||
| 14 | 14 | ||||
| n | 15 | cours_v_leva(exchange_rates) | n | 15 | курс_в_лева(exchange_rates) |
| 16 | 16 | ||||
| n | 17 | def valuta_kym_levcheta (amount, exchange_rates): | n | 17 | def валута_към_левчета (amount, exchange_rates): |
| 18 | valuta_kym_levcheta_dict = {} | 18 | valuta_kym_levcheta_dict = {} | ||
| 19 | euro_currency = "EUR" | 19 | euro_currency = "EUR" | ||
| 20 | if dict[euro_currency] == 0.5113: | 20 | if dict[euro_currency] == 0.5113: | ||
| n | 21 | exchange_rates = cours_v_leva(exchange_rates) | n | 21 | exchange_rates = курс_в_лева(exchange_rates) |
| 22 | print(exchange_rates) | 22 | print(exchange_rates) | ||
| 23 | for key in amount: | 23 | for key in amount: | ||
| 24 | key_in_amount = key[0] | 24 | key_in_amount = key[0] | ||
| 25 | print(exchange_rates) | 25 | print(exchange_rates) | ||
| 26 | valuta_kym_levcheta_dict[key[0]] = round(key[1] * (exchange_rates[key_in_amount]), 4) | 26 | valuta_kym_levcheta_dict[key[0]] = round(key[1] * (exchange_rates[key_in_amount]), 4) | ||
| 27 | print(valuta_kym_levcheta_dict) | 27 | print(valuta_kym_levcheta_dict) | ||
| 28 | return valuta_kym_levcheta_dict | 28 | return valuta_kym_levcheta_dict | ||
| 29 | 29 | ||||
| 30 | exchange_rates_1 = {"EUR": 0.5113, "USD": 0.5982, "DKK": 3.8226} | 30 | exchange_rates_1 = {"EUR": 0.5113, "USD": 0.5982, "DKK": 3.8226} | ||
| 31 | amount = [("EUR", 1.34), ("USD", 10.23), ("DKK", 0.12), ("EUR", 1.5)] | 31 | amount = [("EUR", 1.34), ("USD", 10.23), ("DKK", 0.12), ("EUR", 1.5)] | ||
| 32 | 32 | ||||
| 33 | 33 | ||||
| n | 34 | def e_patriotichna (amount, exchange_rates): | n | 34 | def е_патриотична (amount, exchange_rates): |
| 35 | valuta_kym_levcheta_dict = {} | 35 | valuta_kym_levcheta_dict = {} | ||
| n | 36 | valuta_kym_levcheta (amount, exchange_rates) | n | 36 | валута_към_левчета (amount, exchange_rates) |
| 37 | print(valuta_kym_levcheta_dict) | 37 | print(valuta_kym_levcheta_dict) | ||
| 38 | 38 | ||||
| t | 39 | e_patriotichna(amount, exchange_rates_1) | t | 39 | е_патриотична(amount, exchange_rates_1) |
| 40 | 40 |
| Legends | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|
|
| |||||||||
11.03.2026 17:15
11.03.2026 17:15
11.03.2026 17:18
11.03.2026 17:17
11.03.2026 17:16