Skip to content

Commit 2721f98

Browse files
committed
REF: replace columns setter with initialization
1 parent e748370 commit 2721f98

File tree

1 file changed

+7
-23
lines changed

1 file changed

+7
-23
lines changed

pandas/io/formats/format.py

+7-23
Original file line numberDiff line numberDiff line change
@@ -454,20 +454,13 @@ class TableFormatter:
454454

455455
show_dimensions: Union[bool, str]
456456
formatters: FormattersType
457+
columns: Index
457458

458459
@property
459460
def is_truncated(self) -> bool:
460461
self._is_truncated: bool
461462
return self._is_truncated
462463

463-
@property
464-
def columns(self) -> Index:
465-
return self._columns
466-
467-
@columns.setter
468-
def columns(self, columns: Index) -> None:
469-
self._columns: Index = columns
470-
471464
@property
472465
def should_show_dimensions(self) -> bool:
473466
return self.show_dimensions is True or (
@@ -582,7 +575,6 @@ def __init__(
582575
self.na_rep = na_rep
583576
self.decimal = decimal
584577
self.col_space = self._initialize_colspace(col_space)
585-
586578
self.header = header
587579
self.index = index
588580
self.line_width = line_width
@@ -595,10 +587,7 @@ def __init__(
595587
self.justify = justify # type: ignore[assignment]
596588
self.bold_rows = bold_rows
597589
self.escape = escape
598-
599-
# Ignoring error:
600-
# expression has type "Optional[Sequence[str]]", variable has type "Index"
601-
self.columns = columns # type: ignore[assignment]
590+
self.columns = self._initialize_columns(columns)
602591

603592
self._truncate()
604593
self.adj = get_adjustment()
@@ -632,18 +621,13 @@ def justify(self, justify: Optional[str]) -> None:
632621
else:
633622
self._justify = justify
634623

635-
@property
636-
def columns(self) -> Index:
637-
return self._columns
638-
639-
@columns.setter
640-
def columns(self, columns: Optional[Sequence[str]]) -> None:
624+
def _initialize_columns(self, columns: Optional[Sequence[str]]) -> Index:
641625
if columns is not None:
642-
self._columns = ensure_index(columns)
643-
self.frame = self.frame[self._columns]
626+
cols = ensure_index(columns)
627+
self.frame = self.frame[cols]
628+
return cols
644629
else:
645-
self._columns = self.frame.columns
646-
assert self._columns is not None
630+
return self.frame.columns
647631

648632
def _initialize_colspace(
649633
self, col_space: Optional[ColspaceArgType]

0 commit comments

Comments
 (0)