列表等数据结构类型的 Sphinx 文档字符串标准是什么?

2024-02-25

Sphinx 是否有支持的标准来记录不是简单的单个对象的参数或返回值类型?

例如,在下面的例子中,arg1 是一个 str,arg2 是一个 str 列表,arg3 是一个 str 或 int。如何在 Sphinx 中指定集合或复合类型?或者说这方面没有共同标准?

def function(arg1, arg2, arg3):
    """
    :param arg1: Argument 1
    :type arg1: str
    :param arg2: Argument 2
    :type arg2: list[str]
    :param arg3: Argument 3
    :type arg3: str or int
    """
    pass

Python 3.5 类型提示

虽然 Sphinx 尚未支持,但有一天 Sphinx 类型注释可能会过时。https://docs.python.org/3/library/typing.html https://docs.python.org/3/library/typing.html

目前,我建议使用与该模块完全相同的语法,这将:

  • 使移植更容易,并可能在以后实现自动化
  • 指定一种独特且定义明确的做事方式

Example:

def f(list_of_int):
    """
    :type list_of_int: List[int]
    :rtype: int
    """
    return list_of_int[0] + list_of_int[1]

然后当你有 3.5 时,你会写:

def f(list_of_int : List[int]) -> int:
    return list_of_int[0] + list_of_int[1]

The str or int部分可以表示为Union: 如何在 Sphinx 处理的文档字符串中表达单个参数或返回值的多种类型? https://stackoverflow.com/questions/34647966/how-to-express-multiple-types-for-a-single-parameter-or-a-return-value-in-docstr/40801906#40801906

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

列表等数据结构类型的 Sphinx 文档字符串标准是什么? 的相关文章

  • 如何把父母和孩子联系起来?

    有两个简单的类 一个只有parent属性 并且两者兼而有之parent and children属性 这意味着同时具备两者的人parent and children继承自唯一的parent 这是只有parent属性 我们就这样称呼它吧Chi
  • 在函数内的 for 循环上使用 tqdm 来检查进度

    我正在使用 for 循环迭代目录树内的一大组文件 这样做时 我想通过控制台中的进度条来监视进度 因此 我决定使用 tqdm 来实现此目的 目前 我的代码如下所示 for dirPath subdirList fileList in tqdm
  • 从内存地址创建python对象(使用gi.repository)

    有时我需要调用仅存在于 C 中的 gtk gobject 函数 但返回一个具有 python 包装器的对象 之前我使用过基于 ctypes 的解决方案 效果很好 现在我从 PyGtk import gtk 切换到 GObject intro
  • 使用 Boto3 超时的 AWS Lambda 函数

    我已经解决了我自己的问题 但无论如何我都会发布它 希望能节省其他人几个小时 我在 AWS 上有一个无服务器项目 使用 Python 将记录插入到 kinesis 队列中 但是 当我使用 boto3 client kinesis 或 put
  • Python3将模块从文件夹导入到另一个文件夹

    我的结构字典是 mainFolder folder1 init py file1 py file2 py folder2 init py file3 py file4 py setup py init py 我需要将 file4 py 从f
  • Python 内置对象的 __enter__() 和 __exit__() 在哪里定义?

    我读到每次使用 with 时都会调用该对象的 enter 和 exit 方法 我知道对于用户定义的对象 您可以自己定义这些方法 但我不明白这对于 打开 等内置对象 函数甚至测试用例是如何工作的 这段代码按预期工作 我假设它使用 exit 关
  • 获取 Keras model.summary() 作为表

    我在 Keras 中创建了相当大的模型 我正在用 LaTeX 写一篇关于它的文章 为了很好地描述 LaTeX 中的 keras 模型 我想用它创建一个 LaTeX 表 我可以手动实现它 但我想知道是否有任何 更好 的方法来实现这一点 我四处
  • 列表推导式和 for 循环中的 Lambda 表达式[重复]

    这个问题在这里已经有答案了 我想要一个 lambda 列表 作为一些繁重计算的缓存 并注意到这一点 gt gt gt j for j in lambda i for i in range 10 9 9 9 9 9 9 9 9 9 9 Alt
  • multiprocessing.Queue 中的 ctx 参数

    我正在尝试使用 multiprocessing Queue 模块中的队列 实施 https docs python org 3 4 library multiprocessing html exchang objects Between p
  • 在 django 中导入设置时出现奇怪的错误

    我有很多项目在 ubuntu 中使用 python2 7 和 virtualenv virtualenvwrapper 工作 在我的工作中 一些开发人员使用 macosx 和 windows 通常我像往常一样创建项目 django admi
  • 使用 ElementTree 在 python 中解析 xml

    我对 python 很陌生 我需要解析一些脏的 xml 文件 这些文件需要先清理 我有以下 python 代码 import arff import xml etree ElementTree import re totstring wit
  • Eclipse/PyDev 中未使用导入警告,尽管已使用

    我正在我的文件中导入一个绘图包 如下所示 import matplotlib pyplot as plt 稍后我会在我的代码中成功使用此导入 fig plt figure figsize 16 10 然而 Eclipse 告诉我 未使用的导
  • 哪种方式最适合Python工厂注册?

    这是一个关于这些方法中哪一种被认为是最有效的问题 Pythonic 我不是在寻找个人意见 而是在寻找惯用的观点 我的背景不是Python 所以这会对我有帮助 我正在开发一个可扩展的 Python 3 项目 这个想法类似于工厂模式 只不过它是
  • 根据标点符号列表替换数据框中的标点符号[重复]

    这个问题在这里已经有答案了 使用 Canopy 和 Pandas 我有数据框 a 其定义如下 a pd read csv text txt df pd DataFrame a df columns test test txt 是一个单列文件
  • tf.print() vs Python print vs tensor.eval()

    看来在Tensorflow中 至少有三种方法可以打印出张量的值 我一直在读here https www freecodecamp org news debugging tensorflow a starter e6668ce72617 an
  • AWS 将 MQTT 消息存储到 DynamoDB

    我构建了一个定期发送 MQTT 消息的 python 脚本 这是发送到后端的 JSON 字符串 Id 1234 Ut 1488395951 Temp 22 86 Rh 48 24 在后端 我想将 MQTT 消息存储到 DynamoDB 表中
  • SQLAlchemy 与 count、group_by 和 order_by 使用 ORM

    我有几个函数需要使用 count group by 和 order by 进行一对多连接 我使用 sqlalchemy select 函数生成一个查询 该查询将返回一组 id 然后我对其进行迭代以对各个记录执行 ORM 选择 我想知道是否有
  • PyQt5按钮lambda变量变成布尔值[重复]

    这个问题在这里已经有答案了 当我运行下面的代码时 它显示如下 为什么 x 不是 x 而是变成布尔值 这种情况仅发生在传递到用 lambda 调用的函数中的第一个参数上 错误的 y home me model some file from P
  • 超过两个点的Python相对导入

    是否可以使用路径中包含两个以上点的模块引用 就像这个例子一样 Project structure sound init py codecs init py echo init py nix init py way1 py way2 py w
  • 使用 python 将 CSV 文件上传到 Microsoft Azure 存储帐户

    我正在尝试上传一个 csv使用 python 将文件写入 Microsoft Azure 存储帐户 我已经发现C sharp https blogs msdn microsoft com jmstall 2012 08 03 convert

随机推荐

  • 需要 SQL 优化(也许 DISTINCT ON 是原因?)

    相关的前一个问题 按值 而不是列 分组后从组中选择随机条目 https stackoverflow com questions 15091363 select a random entry from a group after groupi
  • 我可以在不使用语音命令的情况下从其他应用程序启动 Google Home 上的操作吗?

    我不确定这是否已经可能 我可以让另一个应用程序向 Google Home 发起操作 而不是让人通过与其对话来发起操作吗 例如 我想让 Smartthings IFTTT 要求 Google Home 播放一些内容 下面几个案例 情况 1 如
  • 将 AngularJS 指令绑定到数组的映射

    我有一个接受对象数组的指令 在标记中声明指令时 作用域具有一个对象数组 其中包含指令所需的对象 所以我需要在数组上应用映射函数 执行此操作的正确方法是什么 以便对原始数组进行的更新反映在指令内 这是一个采用幼稚方法的 Plunker 令我惊
  • 添加“System.Data.SQLite”作为参考

    当我构建用 ASP NET 和 C 完成的项目时 它产生了以下错误 命名空间 System Data 中不存在类型或命名空间名称 SQLite 您是否缺少程序集引用 因此 当我尝试将其添加为参考时 我无法在我的库中找到 System Dat
  • jQuery 获取脚本

    我目前一直在使用几个必须以非常特定的顺序加载的 JavaScript 库 由于 jQuery 的 getScript 是异步的 因此它会非常快速地开始下载所有脚本 并在完成后执行它们 由于它们不按顺序执行 我从库中收到多个错误 不幸的是我无
  • 在 Python 中的 POST 请求中传递“+”字符

    我正在尝试在 Python 脚本中进行一些自动化操作 但遇到了问题 我正在尝试向服务器发送 POST 消息 url http www example com params arg0 value arg1 value f urllib url
  • 如何撰写和提出 RFC?

    我发现 IMAPv4 有一个缺点 因为它强制用户下载整个正文 文本 HTML 附件 如何编写并提出 RFC 来解决该问题 如果您之前有撰写技术文档 提案 尤其是 RFC 的经验 请分享 实际上有一个 RFC RFC 7322 RFC 风格指
  • 如何禁用字符代码 178 (0xB2) (²) 、 179 (0xB3) (3) 和 185 (0xB9) (1) 作为数字?

    使用 SWI Prolog 生成数字时 code type X digit 结果是预期的ASCII http www asciitable com 字符代码和 178 0xB2 179 0xB3 185 0xB9 e g code type
  • 用随机数替换 pandas 数据框中的唯一值

    我有一个 pandas 数据框 我想用随机正态数替换一些唯一值 在下面的示例中 要替换的值为 0 import numpy as np import pandas as pd dates pd date range 20160101 per
  • KVO 不起作用:消息已收到但未处理

    我在使用 KVO 时遇到以下错误 它只适用于 UIViewController 的子类吗 Terminating app due to uncaught exception NSInternalInconsistencyException
  • 如何从 Bash 生成 Pusher 身份验证字符串?

    我无法生成要使用的 正确 身份验证字符串 通过curl向Pusher发送消息 这是我的脚本 当然 秘密部分被删掉了 bin bash key my key secret my secret appID my app id timestamp
  • 如何使用 jasmine 测试具有 setTimeout 的函数?

    我需要为具有以下功能的函数编写测试setTimeout 打电话进去 但我找不到我应该怎么做 这是函数 Disables all submit buttons after a submit button is pressed var bloc
  • Jenkins 重新运行设置向导

    刚刚在 Windows 服务器上安装了最新的 Jenkins 将其更改为作为服务运行 但我的登录不再有效 没问题 暂时禁用安全性 但发现我所有的插件都不见了 如何让它重新运行设置向导 正如所见第310期 https github com j
  • 如何处理 Firebase 通知,即 Android 中的通知消息和数据消息

    当用户处于前台和后台时 使用 Xamarin Android 在 firebase 中处理通知消息和数据消息的最佳方法是什么 另外 如何获取通知数据 例如特定通知的文本 PS 我访问过以下线程 但没有一个真正有帮助 当设备屏幕关闭时如何处理
  • 是否可以使用触控板进行手势操作?

    在 Chrome 中的 Macbook Pro 上 在屏幕上滑动两根手指可以前后移动 我该如何禁用此功能 并在 jQuery 或 Javascript 中创建自定义手势 我真正需要知道的是当两个手指放在触控板上时如何检测 我认为这是最好的方
  • Vue js点击获取html5属性

    我正在做一个使用 vuejs 最新版本的项目 在这个项目中 我想在点击事件上获取与 vue 关联的 html5 属性 我的按钮代码是 a href class btn btn info btn xs i class fa fa pencil
  • 将 div 滚动到另一个 div 上

    我有两个高度为 100 的 div 当你滚动时 我希望第二个 div 覆盖其他滚动 而不是向上滚动第一个 div 就像在这个网站上一样 http www endzeit ausstellung de http www endzeit aus
  • docker-compose 中的 Windows 10 绑定安装不起作用

    我正在使用 docker compose 来管理多容器应用程序 其中 1 个容器需要访问主机上目录的内容 根据 docker 和 docker compose 上的各种文档来源 这似乎很简单 但我正在努力让它工作 event process
  • 在 LINQ to SQL 中执行 InsertOnSubmit 时出现 NullReferenceException

    在我的数据库中 我有一个名为 工作人员 当我通过 linq to sql 将其带入我的 net 项目时 会创建一个实体类 StaffMember 现在 我还在我的项目中创建了一个部分类 StaffMember 以添加我在其他顶层使用的额外属
  • 列表等数据结构类型的 Sphinx 文档字符串标准是什么?

    Sphinx 是否有支持的标准来记录不是简单的单个对象的参数或返回值类型 例如 在下面的例子中 arg1 是一个 str arg2 是一个 str 列表 arg3 是一个 str 或 int 如何在 Sphinx 中指定集合或复合类型 或者