Skip to content

Commit f7b2207

Browse files
authored
Permit generators (and any Iterable) in DataFrame initializer (#344)
1 parent 2111a97 commit f7b2207

File tree

2 files changed

+5
-1
lines changed

2 files changed

+5
-1
lines changed

pandas-stubs/core/frame.pyi

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -188,7 +188,7 @@ class DataFrame(NDFrame, OpsMixin):
188188
data: ListLikeU
189189
| DataFrame
190190
| dict[Any, Any]
191-
| Iterable[tuple[Hashable, ListLikeU]]
191+
| Iterable[ListLikeU | tuple[Hashable, ListLikeU]]
192192
| None = ...,
193193
index: Axes | None = ...,
194194
columns: Axes | None = ...,

tests/test_frame.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import csv
55
import datetime
66
import io
7+
import itertools
78
from pathlib import Path
89
from typing import (
910
TYPE_CHECKING,
@@ -48,6 +49,9 @@
4849
def test_types_init() -> None:
4950
pd.DataFrame(data={"col1": [1, 2], "col2": [3, 4]})
5051
pd.DataFrame(data={"col1": [1, 2], "col2": [3, 4]}, index=[2, 1])
52+
pd.DataFrame(data=[[1, 2, 3], [4, 5, 6]])
53+
pd.DataFrame(data=itertools.repeat([1, 2, 3], 3))
54+
pd.DataFrame(data=(range(i) for i in range(5)))
5155
pd.DataFrame(data=[1, 2, 3, 4], dtype=np.int8)
5256
pd.DataFrame(
5357
np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]),

0 commit comments

Comments
 (0)