You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Polars注册命名空间的方法无法在IDE中显示文档字符串与参数类型的问题求助

Polars注册命名空间的方法无法在IDE中显示文档字符串与参数类型的问题求助

各位好,我最近在用Polars注册自定义DataFrame命名空间的时候遇到了一个IDE提示的问题,想请教下大家怎么解决。

我写了这样一段示例代码,用来注册一个名为test的命名空间,里面包含add_lit_col方法,还用上了Pydantic的validate_call做参数验证:

import polars as pl
from pydantic import ValidationError, validate_call


@pl.api.register_dataframe_namespace("test")
class TestOps:
    def __init__(self, df: pl.DataFrame) -> None:
        self._df = df

    @validate_call
    def add_lit_col(self, lit_int: int = 5) -> pl.DataFrame:
        """ Add a literal integer defined by `lit_int` to the dataframe
        """
        return self._df.with_columns(pl.lit(lit_int))


pl.DataFrame(
    data=["aaa", "bbb", "ccc", "ddd", "eee", "fff"],
).test.add_lit_col("foo")

目前来看,Pydantic的参数验证是正常工作的,而且我直接打印这个方法的文档字符串也能得到正确结果:

TestOps.add_lit_col.__doc__

# 输出:
' Add a literal integer defined by `lit_int` to the dataframe\n        '

但问题是,在IDE里不管我悬停在pl.DataFrame的test命名空间上,还是悬停在add_lit_col方法上,都看不到对应的文档字符串和参数类型提示,只会显示(function) add_lit_col: Any,完全没有方法的参数和文档信息,这对开发体验影响挺大的。

有没有大佬知道怎么让IDE能正确识别这些自定义命名空间方法的类型和文档呀?

备注:内容来源于stack exchange,提问作者Kevin Li

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.14 09:48:02