Skip to content

Commit a251ba3

Browse files
jbrockmendeljreback
authored andcommitted
CLN: make kwargs explicit in pytables constructors (#29936)
1 parent 5787b20 commit a251ba3

File tree

1 file changed

+44
-42
lines changed

1 file changed

+44
-42
lines changed

pandas/io/pytables.py

+44-42
Original file line numberDiff line numberDiff line change
@@ -1706,7 +1706,6 @@ class IndexCol:
17061706

17071707
name: str
17081708
cname: str
1709-
kind_attr: str
17101709

17111710
def __init__(
17121711
self,
@@ -1717,12 +1716,10 @@ def __init__(
17171716
cname: Optional[str] = None,
17181717
itemsize=None,
17191718
axis=None,
1720-
kind_attr: Optional[str] = None,
17211719
pos=None,
17221720
freq=None,
17231721
tz=None,
17241722
index_name=None,
1725-
**kwargs,
17261723
):
17271724

17281725
if not isinstance(name, str):
@@ -1734,7 +1731,6 @@ def __init__(
17341731
self.itemsize = itemsize
17351732
self.name = name
17361733
self.cname = cname or name
1737-
self.kind_attr = kind_attr or f"{name}_kind"
17381734
self.axis = axis
17391735
self.pos = pos
17401736
self.freq = freq
@@ -1751,7 +1747,10 @@ def __init__(
17511747
# constructor annotations.
17521748
assert isinstance(self.name, str)
17531749
assert isinstance(self.cname, str)
1754-
assert isinstance(self.kind_attr, str)
1750+
1751+
@property
1752+
def kind_attr(self) -> str:
1753+
return f"{self.name}_kind"
17551754

17561755
def set_pos(self, pos: int):
17571756
""" set the position of this column in the Table """
@@ -2044,11 +2043,12 @@ class DataCol(IndexCol):
20442043
_info_fields = ["tz", "ordered"]
20452044

20462045
@classmethod
2047-
def create_for_block(cls, i=None, name=None, cname=None, version=None, **kwargs):
2046+
def create_for_block(
2047+
cls, i: int, name=None, version=None, pos: Optional[int] = None
2048+
):
20482049
""" return a new datacol with the block i """
20492050

2050-
if cname is None:
2051-
cname = name or f"values_block_{i}"
2051+
cname = name or f"values_block_{i}"
20522052
if name is None:
20532053
name = cname
20542054

@@ -2063,27 +2063,24 @@ def create_for_block(cls, i=None, name=None, cname=None, version=None, **kwargs)
20632063
except IndexError:
20642064
pass
20652065

2066-
return cls(name=name, cname=cname, **kwargs)
2066+
return cls(name=name, cname=cname, pos=pos)
20672067

20682068
def __init__(
2069-
self,
2070-
values=None,
2071-
kind=None,
2072-
typ=None,
2073-
cname=None,
2074-
data=None,
2075-
meta=None,
2076-
metadata=None,
2077-
block=None,
2078-
**kwargs,
2069+
self, name: str, values=None, kind=None, typ=None, cname=None, pos=None,
20792070
):
2080-
super().__init__(values=values, kind=kind, typ=typ, cname=cname, **kwargs)
2071+
super().__init__(
2072+
name=name, values=values, kind=kind, typ=typ, pos=pos, cname=cname
2073+
)
20812074
self.dtype = None
2082-
self.dtype_attr = f"{self.name}_dtype"
2083-
self.meta = meta
2084-
self.meta_attr = f"{self.name}_meta"
2085-
self.set_data(data)
2086-
self.set_metadata(metadata)
2075+
self.data = None
2076+
2077+
@property
2078+
def dtype_attr(self) -> str:
2079+
return f"{self.name}_dtype"
2080+
2081+
@property
2082+
def meta_attr(self) -> str:
2083+
return f"{self.name}_meta"
20872084

20882085
def __repr__(self) -> str:
20892086
temp = tuple(
@@ -3156,8 +3153,15 @@ class Table(Fixed):
31563153
is_table = True
31573154
is_shape_reversed = False
31583155

3159-
def __init__(self, *args, **kwargs):
3160-
super().__init__(*args, **kwargs)
3156+
index_axes: List[IndexCol]
3157+
non_index_axes: List[Tuple[int, Any]]
3158+
values_axes: List[DataCol]
3159+
data_columns: List
3160+
metadata: List
3161+
info: Dict
3162+
3163+
def __init__(self, parent: HDFStore, group: "Node", **kwargs):
3164+
super().__init__(parent, group, **kwargs)
31613165
self.index_axes = []
31623166
self.non_index_axes = []
31633167
self.values_axes = []
@@ -3303,18 +3307,18 @@ def queryables(self) -> Dict[str, Any]:
33033307
""" return a dict of the kinds allowable columns for this object """
33043308

33053309
# compute the values_axes queryables
3306-
return dict(
3307-
[(a.cname, a) for a in self.index_axes]
3308-
+ [
3309-
(self.storage_obj_type._AXIS_NAMES[axis], None)
3310-
for axis, values in self.non_index_axes
3311-
]
3312-
+ [
3313-
(v.cname, v)
3314-
for v in self.values_axes
3315-
if v.name in set(self.data_columns)
3316-
]
3317-
)
3310+
d1 = [(a.cname, a) for a in self.index_axes]
3311+
d2 = [
3312+
(self.storage_obj_type._AXIS_NAMES[axis], None)
3313+
for axis, values in self.non_index_axes
3314+
]
3315+
d3 = [
3316+
(v.cname, v) for v in self.values_axes if v.name in set(self.data_columns)
3317+
]
3318+
3319+
return dict(d1 + d2 + d3) # type: ignore
3320+
# error: List comprehension has incompatible type
3321+
# List[Tuple[Any, None]]; expected List[Tuple[str, IndexCol]]
33183322

33193323
def index_cols(self):
33203324
""" return a list of my index cols """
@@ -4432,9 +4436,7 @@ def indexables(self):
44324436
for i, n in enumerate(d._v_names):
44334437
assert isinstance(n, str)
44344438

4435-
dc = GenericDataIndexableCol(
4436-
name=n, pos=i, values=[n], version=self.version
4437-
)
4439+
dc = GenericDataIndexableCol(name=n, pos=i, values=[n])
44384440
self._indexables.append(dc)
44394441

44404442
return self._indexables

0 commit comments

Comments
 (0)