feat: 新增技能扩展N11一章相关示例源码
This commit is contained in:
27
code/newsletter/N11/tests/test_accumulate.py
Normal file
27
code/newsletter/N11/tests/test_accumulate.py
Normal file
@@ -0,0 +1,27 @@
|
||||
from typing import Tuple, TypeVar
|
||||
|
||||
import pytest
|
||||
|
||||
Number = TypeVar("Number", int, float)
|
||||
|
||||
|
||||
def accumulate(*numbers: Tuple[Number]) -> Number:
|
||||
result = 0
|
||||
for n in numbers:
|
||||
if not isinstance(n, (int, float)):
|
||||
raise ValueError(f"{n} isn't a valid number value")
|
||||
|
||||
result += n
|
||||
|
||||
return result
|
||||
|
||||
|
||||
def test_accumulate():
|
||||
numbers = [1, 2, 3, 4]
|
||||
expected = 10
|
||||
|
||||
assert accumulate(*numbers) == expected
|
||||
|
||||
|
||||
if __name__== '__main__':
|
||||
pytest.main()
|
||||
Reference in New Issue
Block a user