From c13bac894bded7aef2735b7af83ceb3dbf983628 Mon Sep 17 00:00:00 2001 From: ikun-11451 <334495606@qq.com> Date: Sat, 29 Nov 2025 19:17:40 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E4=BA=86=E4=B8=80=E7=82=B9pyright?= =?UTF-8?q?=E9=94=99=E8=AF=AF=E5=96=B5~?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/__init__.py | 2 +- src/main.py | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/__init__.py b/src/__init__.py index 907af17a3..0ac0c9576 100644 --- a/src/__init__.py +++ b/src/__init__.py @@ -8,7 +8,7 @@ from src.common.logger import get_logger egg = get_logger("小彩蛋") -def weighted_choice(data: Sequence[str], weights: list[float] | None = None) -> str: +def weighted_choice(data: Sequence[str], weights: Sequence[float] | None = None) -> str: """ 从 data 中按权重随机返回一条。 若 weights 为 None,则所有元素权重默认为 1。 diff --git a/src/main.py b/src/main.py index c5132f957..a6c437cea 100644 --- a/src/main.py +++ b/src/main.py @@ -7,7 +7,7 @@ import time import traceback from collections.abc import Callable, Coroutine from random import choices -from typing import Any +from typing import Any, cast from rich.traceback import install @@ -172,6 +172,9 @@ class MainSystem: logger.warning(f"{calc_name} 不是 BaseInterestCalculator 的有效子类") continue + # 显式转换类型以修复 Pyright 错误 + component_class = cast(type[BaseInterestCalculator], component_class) + # 创建组件实例 calculator_instance = component_class()