diff --git a/pandas-stubs/core/frame.pyi b/pandas-stubs/core/frame.pyi index a508c1c1..11449493 100644 --- a/pandas-stubs/core/frame.pyi +++ b/pandas-stubs/core/frame.pyi @@ -185,7 +185,7 @@ class _LocIndexerFrame(_LocIndexer, Generic[_T]): IndexType | MaskType | Callable[[DataFrame], IndexType | MaskType | Sequence[Hashable]] - | list[Hashable] + | list[HashableT] | tuple[ IndexType | MaskType diff --git a/tests/test_frame.py b/tests/test_frame.py index ae0c8bea..4d7171af 100644 --- a/tests/test_frame.py +++ b/tests/test_frame.py @@ -3586,6 +3586,18 @@ def test_in_columns() -> None: check(assert_type(df.groupby(by=cols).sum(), pd.DataFrame), pd.DataFrame) +def test_loc_list_str() -> None: + # GH 1162 (PR) + df = pd.DataFrame( + [[1, 2], [4, 5], [7, 8]], + index=["cobra", "viper", "sidewinder"], + columns=["max_speed", "shield"], + ) + + result = df.loc[["viper", "sidewinder"]] + check(assert_type(result, pd.DataFrame), pd.DataFrame) + + def test_insert_newvalues() -> None: df = pd.DataFrame({"a": [1, 2]}) ab = pd.DataFrame({"col1": [1, 2], "col2": [3, 4]})