From c50aaaf8acac27f3633cc164fbe5357fd3485f39 Mon Sep 17 00:00:00 2001 From: MomIsBestFriend <> Date: Thu, 28 Nov 2019 00:38:16 +0200 Subject: [PATCH 1/2] x.__class__ to type(x) --- pandas/tseries/offsets.py | 9 ++++----- pandas/util/_depr_module.py | 2 +- pandas/util/testing.py | 18 +++++++++--------- 3 files changed, 14 insertions(+), 15 deletions(-) diff --git a/pandas/tseries/offsets.py b/pandas/tseries/offsets.py index 0620f2b9aae49..9c0bceb1d5110 100644 --- a/pandas/tseries/offsets.py +++ b/pandas/tseries/offsets.py @@ -309,9 +309,8 @@ def apply_index(self, i): if type(self) is not DateOffset: raise NotImplementedError( - "DateOffset subclass {name} " - "does not have a vectorized " - "implementation".format(name=self.__class__.__name__) + f"DateOffset subclass {type(self).__name__} " + "does not have a vectorized implementation" ) kwds = self.kwds relativedelta_fast = { @@ -402,7 +401,7 @@ def rollback(self, dt): """ dt = as_timestamp(dt) if not self.onOffset(dt): - dt = dt - self.__class__(1, normalize=self.normalize, **self.kwds) + dt = dt - type(self)(1, normalize=self.normalize, **self.kwds) return dt def rollforward(self, dt): @@ -416,7 +415,7 @@ def rollforward(self, dt): """ dt = as_timestamp(dt) if not self.onOffset(dt): - dt = dt + self.__class__(1, normalize=self.normalize, **self.kwds) + dt = dt + type(self)(1, normalize=self.normalize, **self.kwds) return dt def onOffset(self, dt): diff --git a/pandas/util/_depr_module.py b/pandas/util/_depr_module.py index 45e7db9281837..ae3c6359d20e0 100644 --- a/pandas/util/_depr_module.py +++ b/pandas/util/_depr_module.py @@ -32,7 +32,7 @@ def __init__(self, deprmod, deprmodto=None, removals=None, moved=None): self.moved = moved # For introspection purposes. - self.self_dir = frozenset(dir(self.__class__)) + self.self_dir = frozenset(dir(type(self))) def __dir__(self): deprmodule = self._import_deprmod() diff --git a/pandas/util/testing.py b/pandas/util/testing.py index bcd12eba1651a..e3d20b6384e99 100644 --- a/pandas/util/testing.py +++ b/pandas/util/testing.py @@ -713,7 +713,7 @@ def repr_class(x): return x try: - return x.__class__.__name__ + return type(x).__name__ except AttributeError: return repr(type(x)) @@ -780,17 +780,17 @@ def assert_is_valid_plot_return_object(objs): if isinstance(objs, (pd.Series, np.ndarray)): for el in objs.ravel(): msg = ( - "one of 'objs' is not a matplotlib Axes instance, type " - "encountered {name!r}" - ).format(name=el.__class__.__name__) + "one of 'objs' is not a matplotlib Axes instance, " + f"type encountered {repr(type(el).__name__)}" + ) assert isinstance(el, (plt.Axes, dict)), msg else: - assert isinstance(objs, (plt.Artist, tuple, dict)), ( - "objs is neither an ndarray of Artist instances nor a " - 'single Artist instance, tuple, or dict, "objs" is a {name!r}'.format( - name=objs.__class__.__name__ - ) + msg = ( + "objs is neither an ndarray of Artist instances nor a single " + 'Artist instance, tuple, or dict, "objs" is a ' + f"{repr(type(objs).__name__)}" ) + assert isinstance(objs, (plt.Artist, tuple, dict)), msg def isiterable(obj): From f9599097b3b643f5f8d028021a2213a504856af6 Mon Sep 17 00:00:00 2001 From: MomIsBestFriend <50263213+MomIsBestFriend@users.noreply.github.com> Date: Fri, 29 Nov 2019 15:20:05 +0200 Subject: [PATCH 2/2] Fixes for @alimcmaster1 review --- pandas/util/testing.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pandas/util/testing.py b/pandas/util/testing.py index e3d20b6384e99..9adbf4cee5d74 100644 --- a/pandas/util/testing.py +++ b/pandas/util/testing.py @@ -787,7 +787,7 @@ def assert_is_valid_plot_return_object(objs): else: msg = ( "objs is neither an ndarray of Artist instances nor a single " - 'Artist instance, tuple, or dict, "objs" is a ' + "ArtistArtist instance, tuple, or dict, 'objs' is a " f"{repr(type(objs).__name__)}" ) assert isinstance(objs, (plt.Artist, tuple, dict)), msg