Python 是否可以基于变量/函数命名设置类型提示?

Python 是否可以基于变量/函数命名设置类型提示?,python,python-2.7,Python,Python 2.7,我有一个自定义python框架,它递归地探索一个项目,并使用预定义的函数命名方案运行函数(有点像pytest如何运行前缀为“test”的函数) 当我创建框架将要调用的其中一个函数时,我需要用1个参数定义该函数。此参数指定框架在调用我的函数时将传递给我的对象 为了简单起见,让我们将此参数称为“banana”,并假设其类型为“banana”,它是在框架初始化时实例化的。框架收集它知道需要运行的所有函数,然后依次调用它们,并将每个函数传递给这个全局“香蕉”对象 我的问题是:有没有办法在定义这些函数的脚

我有一个自定义python框架,它递归地探索一个项目,并使用预定义的函数命名方案运行函数(有点像pytest如何运行前缀为“test”的函数)

当我创建框架将要调用的其中一个函数时,我需要用1个参数定义该函数。此参数指定框架在调用我的函数时将传递给我的对象

为了简单起见,让我们将此参数称为“banana”,并假设其类型为“banana”,它是在框架初始化时实例化的。框架收集它知道需要运行的所有函数,然后依次调用它们,并将每个函数传递给这个全局“香蕉”对象

我的问题是:有没有办法在定义这些函数的脚本中为这个参数提供类型提示

例如:

# The framework will search our project and run any function that is prefixed with 'fruit'

def fruit_MyFunction1(banana):
    """
    @param banana: Provided by the framework
    """

    # Ideally, I would have type hinting here, and Python would know that 'banana'
    # is of type [Banana] and provide me a list of relevant methods / parameters
    banana.do_something()

def fruit_MyFunction2(banana):
    """
    @param banana: Provided by the framework
    """

    print banana.colour
我知道.pyi文件,我想知道我是否可以设计一些东西,任何前缀为'fruit'的函数将假定第一个参数是[Banana]对象,并相应地提供类型提示

注意:我不知道函数名是什么,直到框架在运行时识别它们。因此,我不能简单地在.pyi文件中定义“fruit_MyFunction1”和“fruit_MyFunction2”(如上面的示例所示),因为名称是任意的……我所知道的是,有些函数将具有特定的前缀,而我知道这些函数将具有所需的函数签名