diff --git a/pandas-stubs/core/frame.pyi b/pandas-stubs/core/frame.pyi index 9528755a2..5923e71b1 100644 --- a/pandas-stubs/core/frame.pyi +++ b/pandas-stubs/core/frame.pyi @@ -182,7 +182,8 @@ class _LocIndexerFrame(_LocIndexer, Generic[_T]): | Callable[[DataFrame], IndexType | MaskType | Sequence[Hashable]] | list[Hashable] | tuple[ - IndexType + int + | IndexType | MaskType | list[HashableT] | slice diff --git a/tests/test_frame.py b/tests/test_frame.py index fe2b6be1b..8888a69ba 100644 --- a/tests/test_frame.py +++ b/tests/test_frame.py @@ -3056,6 +3056,10 @@ def test_loclist() -> None: check(assert_type(df.loc[:, [None]], pd.DataFrame), pd.DataFrame) check(assert_type(df.loc[:, [1]], pd.DataFrame), pd.DataFrame) +def test_loc_int_row_strlist_col() -> None: + df = pd.DataFrame({"a": [1, 2], "b": [3, 4]}) + check(assert_type(df.loc[0, ["a"]], pd.DataFrame), pd.DataFrame) + check(assert_type(df.loc[0, ["a", "b"]], pd.DataFrame), pd.DataFrame) def test_dict_items() -> None: # GH 180