From 166e8f025f84ddeede62c10cf27ef75e7cbc0ff8 Mon Sep 17 00:00:00 2001 From: Jixun Sun <160219251+AnonToky@users.noreply.github.com> Date: Tue, 4 Nov 2025 20:12:34 +0800 Subject: [PATCH 1/3] apply b905 strict limit in concat.py MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 添加限制 --- pandas/core/reshape/concat.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pandas/core/reshape/concat.py b/pandas/core/reshape/concat.py index e39c716784455..9083d4ba4b86e 100644 --- a/pandas/core/reshape/concat.py +++ b/pandas/core/reshape/concat.py @@ -840,7 +840,7 @@ def _make_concat_multiindex(indexes, keys, levels=None, names=None) -> MultiInde if (levels is None and isinstance(keys[0], tuple)) or ( levels is not None and len(levels) > 1 ): - zipped = list(zip(*keys)) + zipped = list(zip(*keys, strict=True)) if names is None: names = [None] * len(zipped) From eca6a66e4d04c7e76c474138b5844e08d776317e Mon Sep 17 00:00:00 2001 From: Jixun Sun <160219251+AnonToky@users.noreply.github.com> Date: Sun, 9 Nov 2025 15:58:46 +0800 Subject: [PATCH 2/3] Fix zip function to enforce strict matching --- pandas/core/reshape/reshape.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pandas/core/reshape/reshape.py b/pandas/core/reshape/reshape.py index d78e97c6845fe..4bad1cfc15fd8 100644 --- a/pandas/core/reshape/reshape.py +++ b/pandas/core/reshape/reshape.py @@ -778,7 +778,7 @@ def _stack_multi_column_index(columns: MultiIndex) -> MultiIndex | Index: levs = ( [lev[c] if c >= 0 else None for c in codes] - for lev, codes in zip(columns.levels[:-1], columns.codes[:-1]) + for lev, codes in zip(columns.levels[:-1], columns.codes[:-1], strict = True) ) # Remove duplicate tuples in the MultiIndex. @@ -792,7 +792,7 @@ def _stack_multi_column_index(columns: MultiIndex) -> MultiIndex | Index: [ # Not all indices can accept None values. Index(new_lev, dtype=lev.dtype) if None not in new_lev else new_lev - for new_lev, lev in zip(new_levs, columns.levels) + for new_lev, lev in zip(new_levs, columns.levels, strict = True) ], names=columns.names[:-1], ) From bcdc06b479e4c2c3a4df037c25384296ebaa1eec Mon Sep 17 00:00:00 2001 From: Jixun Sun <160219251+AnonToky@users.noreply.github.com> Date: Sun, 9 Nov 2025 15:59:09 +0800 Subject: [PATCH 3/3] Fix zip function to enforce strict matching --- pandas/core/reshape/reshape.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pandas/core/reshape/reshape.py b/pandas/core/reshape/reshape.py index d78e97c6845fe..4bad1cfc15fd8 100644 --- a/pandas/core/reshape/reshape.py +++ b/pandas/core/reshape/reshape.py @@ -778,7 +778,7 @@ def _stack_multi_column_index(columns: MultiIndex) -> MultiIndex | Index: levs = ( [lev[c] if c >= 0 else None for c in codes] - for lev, codes in zip(columns.levels[:-1], columns.codes[:-1]) + for lev, codes in zip(columns.levels[:-1], columns.codes[:-1], strict = True) ) # Remove duplicate tuples in the MultiIndex. @@ -792,7 +792,7 @@ def _stack_multi_column_index(columns: MultiIndex) -> MultiIndex | Index: [ # Not all indices can accept None values. Index(new_lev, dtype=lev.dtype) if None not in new_lev else new_lev - for new_lev, lev in zip(new_levs, columns.levels) + for new_lev, lev in zip(new_levs, columns.levels, strict = True) ], names=columns.names[:-1], )