【问题标题】:How to specify custom tool-tip descriptions for Python functions in IDLE如何在 IDLE 中为 Python 函数指定自定义工具提示描述
【发布时间】:2014-08-21 20:01:52
【问题描述】:

只要我在 IDLE 3.4.1 中键入 print(,就会出现一个工具提示:

print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)

很明显,这是在 print 函数的定义中或其他地方自定义设置的。但是,如果我做一个函数

def func1(*args):
    ...

def func2(*args):
    "func(arg, ...) -> do things"
    ...

甚至

def func3(*args: 'arg, ...') -> 'do things':
    ...

我的工具提示如下:

(*args)

(*args)
func(arg, ...) -> do things

(*args: 'arg, ...') -> 'do things'

当然,我希望工具提示显示为func(arg, ...) -> do things

设置自定义工具提示/文档字符串是内置功能吗?如果没有,那我该怎么做呢?

【问题讨论】:

    标签: python function tooltip python-idle docstring


    【解决方案1】:

    这里是空闲的开发者。工具提示包括实际的函数签名(如果可用)和文档字符串的第一行(或更多,最多 5 个或第一个空白)。在 3.4 之前,内置函数的实际签名不可用。所以解决方法是在文档字符串中包含(假定的)签名。但是,现在正在转换内置函数以提供实际签名,并且当它们提供实际签名时,不需要变通方法,并且从文档字符串中删除了伪签名。换句话说,您想要的表单是一种过时的解决方法,即将消失。对不起。

    PEP8 标准是文档字符串应该以一个摘要行开头(后面跟一个空格),说明函数的作用。对于真正的功能,例如“返回如意之星”。对于副作用方法,请从其他内容开始,例如“重新布置甲板家具”。因此,将签名放在 func2 的文档字符串中是“错误的”,python 编码的函数从来不需要。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-09
      • 2021-02-07
      • 1970-01-01
      相关资源
      最近更新 更多