@@ -387,7 +387,7 @@ def _get_block_manager_axis(cls, axis: Axis) -> int:
387
387
return m - axis
388
388
return axis
389
389
390
- def _get_axis_resolvers (self , axis : str ) -> Dict [str , ABCSeries ]:
390
+ def _get_axis_resolvers (self , axis : str ) -> Dict [str , Union [ "Series" , MultiIndex ] ]:
391
391
# index or columns
392
392
axis_index = getattr (self , axis )
393
393
d = dict ()
@@ -417,10 +417,10 @@ def _get_axis_resolvers(self, axis: str) -> Dict[str, ABCSeries]:
417
417
d [axis ] = dindex
418
418
return d
419
419
420
- def _get_index_resolvers (self ) -> Dict [str , ABCSeries ]:
420
+ def _get_index_resolvers (self ) -> Dict [str , Union [ "Series" , MultiIndex ] ]:
421
421
from pandas .core .computation .parsing import clean_column_name
422
422
423
- d : Dict [str , ABCSeries ] = {}
423
+ d : Dict [str , Union [ "Series" , MultiIndex ] ] = {}
424
424
for axis_name in self ._AXIS_ORDERS :
425
425
d .update (self ._get_axis_resolvers (axis_name ))
426
426
@@ -4703,14 +4703,15 @@ def filter(
4703
4703
return self .reindex (** {name : [r for r in items if r in labels ]})
4704
4704
elif like :
4705
4705
4706
- def f (x ):
4706
+ def f (x ) -> bool :
4707
+ assert like is not None # needed for mypy
4707
4708
return like in ensure_str (x )
4708
4709
4709
4710
values = labels .map (f )
4710
4711
return self .loc (axis = axis )[values ]
4711
4712
elif regex :
4712
4713
4713
- def f (x ):
4714
+ def f (x ) -> bool :
4714
4715
return matcher .search (ensure_str (x )) is not None
4715
4716
4716
4717
matcher = re .compile (regex )
@@ -6556,7 +6557,10 @@ def replace(
6556
6557
regex = True
6557
6558
6558
6559
items = list (to_replace .items ())
6559
- keys , values = zip (* items ) if items else ([], [])
6560
+ if items :
6561
+ keys , values = zip (* items )
6562
+ else :
6563
+ keys , values = ([], [])
6560
6564
6561
6565
are_mappings = [is_dict_like (v ) for v in values ]
6562
6566
0 commit comments