fix: add type hints to maths/primelib.py and fix integer division #14089
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Describe your change:
Added static type hints to all functions in
maths/primelib.pyto ensure compliance with strictmypychecks.Key Changes:
-> list[int],-> bool) to 15+ functions.prime_factorization, changedquotient /= factortoquotient //= factor. The original code produced floats, which conflicted with thelist[int]return type.Verification:
black maths/primelib.pypassed.mypy maths/primelib.pypassed (0 errors).python -m doctest -v maths/primelib.pypassed (79 tests).Add an algorithm?
Fix a bug or typo in an existing algorithm?
Add or change doctests? -- Note: Please avoid changing both code and tests in a single pull request.
Documentation change?
Checklist: