[python-package] fix mypy errors about callbacks #5450
Merged
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.
Contributes to #3756.
Contributes to #3867.
mypy
currently raises the following errors.These errors come from variables' types changing. Specifically, the fact that in the code for
cv()
, the variablecallbacks
is initially assigned a value with typeOptional[List[Callable]]
, then is overwritten with aset
, then the variablecallbacks_before_iter
is initialized as aset
and overwritten with a list.Similar to #5447, this PR proposes fixing those errors by using differently-named variables when types change.
Notes for Reviewers
The same changes proposed in this PR were implemented in #4839 to fix the same code in
train()
.I tested this by running
mypy
as documented in #3867.mypy \ --exclude='python-package/compile/|python-package/build' \ --ignore-missing-imports \ python-package/