Skip to content

Commit 00ba260

Browse files
jbrockmendelproost
authored andcommitted
CLN: annotate __str__ and __repr__ methods (pandas-dev#29467)
1 parent e110ad7 commit 00ba260

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

46 files changed

+73
-73
lines changed

pandas/_libs/internals.pyx

+2-2
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ cdef class BlockPlacement:
5353
self._as_array = arr
5454
self._has_array = True
5555

56-
def __str__(self):
56+
def __str__(self) -> str:
5757
cdef:
5858
slice s = self._ensure_has_slice()
5959
if s is not None:
@@ -63,7 +63,7 @@ cdef class BlockPlacement:
6363

6464
return '%s(%r)' % (self.__class__.__name__, v)
6565

66-
def __repr__(self):
66+
def __repr__(self) -> str:
6767
return str(self)
6868

6969
def __len__(self):

pandas/_libs/interval.pyx

+2-2
Original file line numberDiff line numberDiff line change
@@ -377,15 +377,15 @@ cdef class Interval(IntervalMixin):
377377

378378
return left, right
379379

380-
def __repr__(self):
380+
def __repr__(self) -> str:
381381

382382
left, right = self._repr_base()
383383
name = type(self).__name__
384384
repr_str = '{name}({left!r}, {right!r}, closed={closed!r})'.format(
385385
name=name, left=left, right=right, closed=self.closed)
386386
return repr_str
387387

388-
def __str__(self):
388+
def __str__(self) -> str:
389389

390390
left, right = self._repr_base()
391391
start_symbol = '[' if self.closed_left else '('

pandas/_libs/intervaltree.pxi.in

+2-2
Original file line numberDiff line numberDiff line change
@@ -195,7 +195,7 @@ cdef class IntervalTree(IntervalMixin):
195195
return (result.to_array().astype('intp'),
196196
missing.to_array().astype('intp'))
197197

198-
def __repr__(self):
198+
def __repr__(self) -> str:
199199
return ('<IntervalTree[{dtype},{closed}]: '
200200
'{n_elements} elements>'.format(
201201
dtype=self.dtype, closed=self.closed,
@@ -394,7 +394,7 @@ cdef class {{dtype_title}}Closed{{closed_title}}IntervalNode:
394394
else:
395395
result.extend(self.center_left_indices)
396396

397-
def __repr__(self):
397+
def __repr__(self) -> str:
398398
if self.is_leaf_node:
399399
return ('<{{dtype_title}}Closed{{closed_title}}IntervalNode: '
400400
'%s elements (terminal)>' % self.n_elements)

pandas/_libs/sparse.pyx

+2-2
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ cdef class IntIndex(SparseIndex):
5151
args = (self.length, self.indices)
5252
return IntIndex, args
5353

54-
def __repr__(self):
54+
def __repr__(self) -> str:
5555
output = 'IntIndex\n'
5656
output += 'Indices: %s\n' % repr(self.indices)
5757
return output
@@ -341,7 +341,7 @@ cdef class BlockIndex(SparseIndex):
341341
args = (self.length, self.blocs, self.blengths)
342342
return BlockIndex, args
343343

344-
def __repr__(self):
344+
def __repr__(self) -> str:
345345
output = 'BlockIndex\n'
346346
output += 'Block locations: %s\n' % repr(self.blocs)
347347
output += 'Block lengths: %s' % repr(self.blengths)

pandas/_libs/tslibs/c_timestamp.pyx

+1-1
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@ cdef class _Timestamp(datetime):
124124
# now __reduce_ex__ is defined and higher priority than __reduce__
125125
return self.__reduce__()
126126

127-
def __repr__(self):
127+
def __repr__(self) -> str:
128128
stamp = self._repr_base
129129
zone = None
130130

pandas/_libs/tslibs/nattype.pyx

+2-2
Original file line numberDiff line numberDiff line change
@@ -259,10 +259,10 @@ cdef class _NaT(datetime):
259259
"""
260260
return self.to_datetime64()
261261

262-
def __repr__(self):
262+
def __repr__(self) -> str:
263263
return 'NaT'
264264

265-
def __str__(self):
265+
def __str__(self) -> str:
266266
return 'NaT'
267267

268268
def isoformat(self, sep='T'):

pandas/_libs/tslibs/offsets.pyx

+1-1
Original file line numberDiff line numberDiff line change
@@ -422,7 +422,7 @@ class _BaseOffset:
422422
# that allows us to use methods that can go in a `cdef class`
423423
return self * 1
424424

425-
def __repr__(self):
425+
def __repr__(self) -> str:
426426
className = getattr(self, '_outputName', type(self).__name__)
427427

428428
if abs(self.n) != 1:

pandas/_libs/tslibs/period.pyx

+2-2
Original file line numberDiff line numberDiff line change
@@ -2215,12 +2215,12 @@ cdef class _Period:
22152215
def freqstr(self):
22162216
return self.freq.freqstr
22172217

2218-
def __repr__(self):
2218+
def __repr__(self) -> str:
22192219
base, mult = get_freq_code(self.freq)
22202220
formatted = period_format(self.ordinal, base)
22212221
return "Period('%s', '%s')" % (formatted, self.freqstr)
22222222

2223-
def __str__(self):
2223+
def __str__(self) -> str:
22242224
"""
22252225
Return a string representation for a particular DataFrame
22262226
"""

pandas/_libs/tslibs/timedeltas.pyx

+2-2
Original file line numberDiff line numberDiff line change
@@ -1142,10 +1142,10 @@ cdef class _Timedelta(timedelta):
11421142

11431143
return fmt.format(**comp_dict)
11441144

1145-
def __repr__(self):
1145+
def __repr__(self) -> str:
11461146
return "Timedelta('{val}')".format(val=self._repr_base(format='long'))
11471147

1148-
def __str__(self):
1148+
def __str__(self) -> str:
11491149
return self._repr_base(format='long')
11501150

11511151
def __bool__(self):

pandas/core/arrays/base.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -913,7 +913,7 @@ def view(self, dtype=None) -> Union[ABCExtensionArray, np.ndarray]:
913913
# Printing
914914
# ------------------------------------------------------------------------
915915

916-
def __repr__(self):
916+
def __repr__(self) -> str:
917917
from pandas.io.formats.printing import format_object_summary
918918

919919
template = "{class_name}{data}\nLength: {length}, dtype: {dtype}"

pandas/core/arrays/categorical.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -2048,7 +2048,7 @@ def _get_repr(self, length=True, na_rep="NaN", footer=True):
20482048
result = formatter.to_string()
20492049
return str(result)
20502050

2051-
def __repr__(self):
2051+
def __repr__(self) -> str:
20522052
"""
20532053
String representation.
20542054
"""

pandas/core/arrays/integer.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ class _IntegerDtype(ExtensionDtype):
4545
type = None # type: Type
4646
na_value = np.nan
4747

48-
def __repr__(self):
48+
def __repr__(self) -> str:
4949
sign = "U" if self.is_unsigned_integer else ""
5050
return "{sign}Int{size}Dtype()".format(sign=sign, size=8 * self.itemsize)
5151

pandas/core/arrays/interval.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -860,7 +860,7 @@ def _format_data(self):
860860

861861
return summary
862862

863-
def __repr__(self):
863+
def __repr__(self) -> str:
864864
template = (
865865
"{class_name}"
866866
"{data}\n"

pandas/core/arrays/numpy_.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ def __init__(self, dtype):
4444
self._name = dtype.name
4545
self._type = dtype.type
4646

47-
def __repr__(self):
47+
def __repr__(self) -> str:
4848
return "PandasDtype({!r})".format(self.name)
4949

5050
@property

pandas/core/arrays/sparse/array.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -1515,7 +1515,7 @@ def _add_comparison_ops(cls):
15151515
# ----------
15161516
# Formatting
15171517
# -----------
1518-
def __repr__(self):
1518+
def __repr__(self) -> str:
15191519
return "{self}\nFill: {fill}\n{index}".format(
15201520
self=printing.pprint_thing(self),
15211521
fill=printing.pprint_thing(self.fill_value),

pandas/core/arrays/sparse/dtype.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,7 @@ def subtype(self):
165165
def name(self):
166166
return "Sparse[{}, {}]".format(self.subtype.name, self.fill_value)
167167

168-
def __repr__(self):
168+
def __repr__(self) -> str:
169169
return self.name
170170

171171
@classmethod

pandas/core/base.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ def _constructor(self):
5555
"""class constructor (for this class it's just `__class__`"""
5656
return self.__class__
5757

58-
def __repr__(self):
58+
def __repr__(self) -> str:
5959
"""
6060
Return a string representation for a particular object.
6161
"""

pandas/core/computation/expr.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -834,7 +834,7 @@ def assigner(self):
834834
def __call__(self):
835835
return self.terms(self.env)
836836

837-
def __repr__(self):
837+
def __repr__(self) -> str:
838838
return printing.pprint_thing(self.terms)
839839

840840
def __len__(self):

pandas/core/computation/ops.py

+5-5
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ def __init__(self, name, env, side=None, encoding=None):
8282
def local_name(self):
8383
return self.name.replace(_LOCAL_TAG, "")
8484

85-
def __repr__(self):
85+
def __repr__(self) -> str:
8686
return pprint_thing(self.name)
8787

8888
def __call__(self, *args, **kwargs):
@@ -182,7 +182,7 @@ def _resolve_name(self):
182182
def name(self):
183183
return self.value
184184

185-
def __repr__(self):
185+
def __repr__(self) -> str:
186186
# in python 2 str() of float
187187
# can truncate shorter than repr()
188188
return repr(self.name)
@@ -204,7 +204,7 @@ def __init__(self, op, operands, *args, **kwargs):
204204
def __iter__(self):
205205
return iter(self.operands)
206206

207-
def __repr__(self):
207+
def __repr__(self) -> str:
208208
"""
209209
Print a generic n-ary operator and its operands using infix notation.
210210
"""
@@ -557,7 +557,7 @@ def __call__(self, env):
557557
operand = self.operand(env)
558558
return self.func(operand)
559559

560-
def __repr__(self):
560+
def __repr__(self) -> str:
561561
return pprint_thing("{0}({1})".format(self.op, self.operand))
562562

563563
@property
@@ -582,7 +582,7 @@ def __call__(self, env):
582582
with np.errstate(all="ignore"):
583583
return self.func.func(*operands)
584584

585-
def __repr__(self):
585+
def __repr__(self) -> str:
586586
operands = map(str, self.operands)
587587
return pprint_thing("{0}({1})".format(self.op, ",".join(operands)))
588588

pandas/core/computation/pytables.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -229,7 +229,7 @@ def convert_values(self):
229229

230230

231231
class FilterBinOp(BinOp):
232-
def __repr__(self):
232+
def __repr__(self) -> str:
233233
return pprint_thing(
234234
"[Filter : [{lhs}] -> [{op}]".format(lhs=self.filter[0], op=self.filter[1])
235235
)
@@ -295,7 +295,7 @@ def evaluate(self):
295295

296296

297297
class ConditionBinOp(BinOp):
298-
def __repr__(self):
298+
def __repr__(self) -> str:
299299
return pprint_thing("[Condition : [{cond}]]".format(cond=self.condition))
300300

301301
def invert(self):
@@ -545,7 +545,7 @@ def __init__(self, where, queryables=None, encoding=None, scope_level=0):
545545
)
546546
self.terms = self.parse()
547547

548-
def __repr__(self):
548+
def __repr__(self) -> str:
549549
if self.terms is not None:
550550
return pprint_thing(self.terms)
551551
return pprint_thing(self.expr)

pandas/core/computation/scope.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ def __init__(
139139
self.resolvers = DeepChainMap(*resolvers)
140140
self.temps = {}
141141

142-
def __repr__(self):
142+
def __repr__(self) -> str:
143143
scope_keys = _get_pretty_string(list(self.scope.keys()))
144144
res_keys = _get_pretty_string(list(self.resolvers.keys()))
145145
unicode_str = "{name}(scope={scope_keys}, resolvers={res_keys})"

pandas/core/dtypes/base.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ class property**.
7171

7272
_metadata = () # type: Tuple[str, ...]
7373

74-
def __str__(self):
74+
def __str__(self) -> str:
7575
return self.name
7676

7777
def __eq__(self, other):

pandas/core/dtypes/dtypes.py

+4-4
Original file line numberDiff line numberDiff line change
@@ -415,7 +415,7 @@ def __eq__(self, other: Any) -> bool:
415415
return True
416416
return hash(self) == hash(other)
417417

418-
def __repr__(self):
418+
def __repr__(self) -> str_type:
419419
tpl = "CategoricalDtype(categories={}ordered={})"
420420
if self.categories is None:
421421
data = "None, "
@@ -752,7 +752,7 @@ def construct_from_string(cls, string):
752752

753753
raise TypeError("Could not construct DatetimeTZDtype")
754754

755-
def __str__(self):
755+
def __str__(self) -> str_type:
756756
return "datetime64[{unit}, {tz}]".format(unit=self.unit, tz=self.tz)
757757

758758
@property
@@ -889,7 +889,7 @@ def construct_from_string(cls, string):
889889
pass
890890
raise TypeError("could not construct PeriodDtype")
891891

892-
def __str__(self):
892+
def __str__(self) -> str_type:
893893
return self.name
894894

895895
@property
@@ -1068,7 +1068,7 @@ def construct_from_string(cls, string):
10681068
def type(self):
10691069
return Interval
10701070

1071-
def __str__(self):
1071+
def __str__(self) -> str_type:
10721072
if self.subtype is None:
10731073
return "interval"
10741074
return "interval[{subtype}]".format(subtype=self.subtype)

pandas/core/generic.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -2107,7 +2107,7 @@ def __setstate__(self, state):
21072107
# ----------------------------------------------------------------------
21082108
# Rendering Methods
21092109

2110-
def __repr__(self):
2110+
def __repr__(self) -> str:
21112111
# string representation based upon iterating over self
21122112
# (since, by definition, `PandasContainers` are iterable)
21132113
prepr = "[%s]" % ",".join(map(pprint_thing, self))

pandas/core/groupby/groupby.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -402,7 +402,7 @@ def __init__(
402402
def __len__(self):
403403
return len(self.groups)
404404

405-
def __repr__(self):
405+
def __repr__(self) -> str:
406406
# TODO: Better repr for GroupBy object
407407
return object.__repr__(self)
408408

pandas/core/groupby/grouper.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -210,7 +210,7 @@ def _set_grouper(self, obj, sort=False):
210210
def groups(self):
211211
return self.grouper.groups
212212

213-
def __repr__(self):
213+
def __repr__(self) -> str:
214214
attrs_list = (
215215
"{}={!r}".format(attr_name, getattr(self, attr_name))
216216
for attr_name in self._attributes
@@ -372,7 +372,7 @@ def __init__(
372372

373373
self.grouper = self.grouper.astype("timedelta64[ns]")
374374

375-
def __repr__(self):
375+
def __repr__(self) -> str:
376376
return "Grouping({0})".format(self.name)
377377

378378
def __iter__(self):

pandas/core/indexes/frozen.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -105,10 +105,10 @@ def _disabled(self, *args, **kwargs):
105105
)
106106
)
107107

108-
def __str__(self):
108+
def __str__(self) -> str:
109109
return pprint_thing(self, quote_strings=True, escape_chars=("\t", "\r", "\n"))
110110

111-
def __repr__(self):
111+
def __repr__(self) -> str:
112112
return "%s(%s)" % (self.__class__.__name__, str(self))
113113

114114
__setitem__ = __setslice__ = __delitem__ = __delslice__ = _disabled
@@ -148,7 +148,7 @@ def values(self):
148148
arr = self.view(np.ndarray).copy()
149149
return arr
150150

151-
def __repr__(self):
151+
def __repr__(self) -> str:
152152
"""
153153
Return a string representation for this object.
154154
"""

0 commit comments

Comments
 (0)