首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用Sphinx的内部类中不显示来自父类的属性docstring

在Python中,当使用Sphinx文档生成工具生成文档时,内部类中的属性默认不会显示来自父类的属性的docstring。这是因为Sphinx默认只会显示当前类的属性和方法的文档信息。

如果想要在内部类中显示来自父类的属性的docstring,可以使用Sphinx提供的特殊注释.. autoattribute::来实现。以下是具体的步骤:

  1. 打开Sphinx生成的conf.py文件,找到autodoc_default_options配置项,并确保其中包含了inherited-members选项。这样才能让Sphinx自动识别并显示继承自父类的成员。
代码语言:txt
复制
autodoc_default_options = {
    'inherited-members': True,
}
  1. 在内部类的docstring下方,使用.. autoattribute::注释来显示来自父类的属性的文档信息。将父类的属性名作为参数传递给.. autoattribute::注释。
代码语言:txt
复制
class MyClass:
    """
    This is the docstring of MyClass.
    """

    class InnerClass(ParentClass):
        """
        This is the docstring of InnerClass.

        .. autoattribute:: ParentClass.parent_attribute
        """

通过以上步骤,再使用Sphinx生成文档时,就能够显示内部类中来自父类的属性的docstring了。

请注意,以上方法适用于Sphinx生成的文档,具体的实现方式可能会因使用的Sphinx版本或配置而有所差异。另外,本回答中没有提及具体的腾讯云相关产品和产品链接地址,如有需要,请自行参考腾讯云文档或咨询腾讯云官方支持。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • 使用python编写量子线路打印的简单项目,并使用Sphinx自动化生成API文档

    量子线路背景知识 在前面几篇博客中,有介绍过使用开源量子计算编程框架ProjectQ进行量子线路的绘制,会给我们输出一个tex格式的线路图,在文章中可以直接使用。...同时,为了展示API文档的制作过程,这里我们在类与函数内都写了一部分的示例注释代码,在下一个章节介绍一下文档的效果。...我们先点击这里的index和module看看内容,分别为下列的两个图所示: ? ? 最后在这个索引列表中我们点击进入qcprinter这个类中,去查看详细的类的文档说明: ?...相应的函数注释内容也会在接口文档中体现: ? 需要注意的是,如果相关的类或者函数是受保护的类型,那么在sphinx生成的文档中是不会显示的(构造过程中自动忽略)。...补充说明(2021.03.27) 如果在使用sphinx的过程中,发现代码中的注释文件并未被成功生成。

    2.9K20

    Pocoo风格行为大赏

    first', 'set of items', 'with more items', 'to come in this line', 'like this' ] 注意:为了保持美观,可以将链式调用中每个方法前的点...对齐;如果是括号内的换行,请将下一行与上一行的括号对齐,不需要使用续行符号;如果字典、列表、元祖内元素超级多,在起始括号后立即换行。...,混合类则使用双下划线。...如果使用关键字作为类的名称,那么在名称末尾添加下划线。与内置构件冲突是允许的,请一定不要用 在变量名后添加下划线 的方式解决冲突。...更多精彩文章请关注公众号『Pythonnote』或者『全栈技术精选』 3.1 函数和方法参数 1) 类方法: cls 作为第一个参数 2) 实例方法: self 作为第一个参数 3) 用于属性的 lambda

    48310

    Python文档字符串生成器:基于CodeBERT,支持Google、Numpy等多种输出格式

    在训练过程中,使用 CodeSearchNet 语料库作为训练数据,并使用 CodeBERT 中的 Code2NL微调任务。 之后,进行的推断基准测试如下: ?...从上图也能看出,在不同的推断基准测试中,所需要的生成时间都很短(2s内),这体现在操作上的话,就是延迟。...此外,还可以输出Google、docBlockr、Numpy、Sphinx等Docstring格式,PEP0257类型的格式,也即将上线。...使用方法 1、从容器中运行模型推断服务 具有GPU的话:在安装nvidia-docker后,运行docker run-it-d-GPU 0-p 5000:5000 gray kode/ai-docstring...2、在VSCode中安装扩展并使用 光标必须在定义正下方的行上,以生成完全自动填充的文档字符串。

    97920

    Java面向对象特性总结

    当父类显示写了有参构造器,且没有无参构造器。子类继承父类的时候必须显示的调用父类的有参构造器。调用的方式可以使用super(a,b)来调用。...子类对象实例化过程 new出一个子类对象的时候,必须先new出一个父类对象。子类在调用构造方法时,会先调用父类的构造方法。(默认) 如果不写构造方法,编译器默认加上一个无参构造器。...如果在类的声明中未使用extends关键字指明其父类,则默认父类 为java.lang.Object类(任何类都可以调用Object的方法) package java.lang; public class...除此之外的任何地方 都不能使用该类 但是它的对象可以通过外部方法的返回值返回使用,返回值类型只能是局部内部类 的父类或父接口类型 局部内部类可以使用外部方法的局部变量,但是必须是final的。...如果一个方法内抛出异常,该异常对象会被抛给调用者方法中处 理。如果异常没有在调用者方法中处理,它继续被抛给这个调用 方法的上层方法。这个过程将一直继续下去,直到异常被处理。

    48910

    2021 年 Python 程序员必备的 VS code 插件!

    除了语法高亮显示,Python还有一个强大的功能,如: IntelliSense:使用自动补全、代码导航、语法检查等功能编写代码 Linting:使用Pylint、flke8等获得额外的代码分析 代码格式...列表、集合、元组、字典、类等等。...使用这个插件的另一个好处是,它还为每个代码片段提供了至少一个示例,使它在学习Python时很有用。 3、Python Docstring Generator ?...文档的重要性相信大家都知道,Python Docstring Generator通过自动创建文档字符串,大大减少了开发人员的工作量,关于这个扩展最好的事情是它遵循docstring的所有标准格式,包括谷歌...此外,它还可以在工作区中搜索 Python 文件以进行类型估计。 ? 7、jupiter ? jupiter是我最喜欢的VS Code扩展之一。

    1.9K20

    Java匹马行天下之JavaSE核心技术——面向对象

    在Java编程中,我们使用成员变量表示数据模型,用成员方法表示行为模型。             使用类表示某些具有相同属性和行为的事物。 1....default (即缺省,什么也不写): 在同一包内可见,不使用任何修饰符。使用对象:类、接口、变量、方法。 private : 在同一类内可见。使用对象:变量、方法。 ...注意:不能修饰类(外部类) public : 对所有类可见。使用对象:类、接口、变量、方法 protected : 对同一包内的类和所有子类可见。使用对象:变量、方法。 ...,那么子类中需要要重写所有抽象父类的所有抽象方法; 抽象类也可以继承非抽象类,同时继承了父类的所有非私有的属性和方法; 实例 abstract class Caravan{ private...; 子类重写父类方法,子类对象调用的是子类中重写后的方法; 使用static修饰的方法不能被重写,但是可以被子类重写声明; 不同包的子类可以重写父类中protected修饰的方法,但是不能以继承的形式

    80930

    Java匹马行天下之JavaSE核心技术——面向对象

    在Java编程中,我们使用成员变量表示数据模型,用成员方法表示行为模型。使用类表示某些具有相同属性和行为的事物。...Java 支持 4 种不同的访问权限。 default (即缺省,什么也不写): 在同一包内可见,不使用任何修饰符。使用对象:类、接口、变量、方法。 private : 在同一类内可见。...使用对象:变量、方法。 注意:不能修饰类(外部类) public : 对所有类可见。使用对象:类、接口、变量、方法 protected : 对同一包内的类和所有子类可见。使用对象:变量、方法。...父类引用指向子类对象、匿名内部类; 子类必须重写抽象父类的所有抽象方法,或者是把子类也定义为抽象类; 如果一个类继承的抽象父类还有上级抽象父类,那么子类中需要要重写所有抽象父类的所有抽象方法; 抽象类也可以继承非抽象类...,子类对象调用的是子类中重写后的方法; 使用static修饰的方法不能被重写,但是可以被子类重写声明; 不同包的子类可以重写父类中protected修饰的方法,但是不能以继承的形式,用子类对象直接调用父类的该方法

    47630

    用 VS Code 写 Python,这几个插件是必装的!

    并且,生成的文档字符串遵循所有标准格式,包括Google、docBlockr、Numpy、Sphinx和PEP0257。...它的主要功能包括: 快速生成一个可通过Tab键浏览的docstring代码段 在几种不同类型的文档字符串格式之间进行选择 通过pep484类型提示、默认值和var名称推断参数类型 支持args,kwargs...具体功能如下: 在VS Code的侧栏中的“测试”视图中显示“测试资源管理器”,其中包含所有检测到的测试、套件及其状态 在测试发现期间方便的错误报告 单元测试和Pytest调试 在资源管理器中选择测试后...,显示失败的测试日志 支持多根工作区 支持Unittest和Pytest测试框架及其插件 ?...Jupyter可以说是我最喜欢的VS Code插件之一,可以让我们在VS Code中完美使用Jupyter Notebooks。

    55.6K22

    JAVA入门2 原

    1.2定义java中的类 ? ? ? ? 定义类的首字母要大写 ? ? 1.3使用java的对象 ? ? 经常把属性称为实例变量 ? ? ? ? 默认值是0 ? ? ? 1.4成员变量,局部变量 ?...、 protected 、 private 等 2、 Inner 类中定义的 test() 方法可以直接访问 Outer 类中的数据,而不受访问控制符的影响,如直接访问 Outer 类中的私有属性a 3...,方法内部类只在该方法的内部可见,即只在该方法内可以使用。...main里调用属性 ? main调用父类方法 ? main调用子类方法 ? ? 父类无参的构造方法 ? 子类的无参构造方法,隐式的显示 ? ? 会自动执行父类构造方法 ? ? ?...子类没有显示调用父类的构造方法 ? 父类定义一个有参的构造方法 ? 报错 ? 3.6java中的object类 ? ? ? ? ? ? 包名+地址 ?

    38510

    【Java零基础入门篇】第 ④ 期 - 继承(二)

    例如访问父类的成员变量、成员方法和构造方法。 可以在子类的方法或构造方法中,通过“super.属性”或”super.方法”的方式,显式的调用父类中声明的属性或方法。...在Java类中使用super来调用父类中的指定操作: super可用于访问父类中定义的属性(成员变量); super可用于调用父类中定义的成员方法; super可用于在子类构造器中调用父类的构造器; 调用父类的构造方法...,那么在子类构造器的首行,没有显示的声明”super(形参列表)”,默认调用的是父类中空参的构造器:super(); 注意: 当子父类出现同名成员时,可以用super表明调用的是父类中的成员; super...用来保护对类、变量、方法和构造方法的访问。 public : 对所有类可见。使用对象:类、接口、变量、方法; default (即默认,什么也不写): 在同一包内可见,不使用任何修饰符。...**使用对象:**类、接口、变量、方法; protected: 对同一包内的类和所有子类可见。使用对象:变量、方法。 注意:不能修饰类(外部类); private : 在同一类内可见。

    12510

    python 开发规范 预览版

    111' 空格规则 单目运算符与运算对象之间不空格(例如,-,~等),即使单目运算符位于括号内部也一样。...预编译的正则表达式:name_re。 受保护的元素以一个下划线为前缀。双下划线前缀只有定义混入类(mixin classes)时才使用。...命名要有寓意, 不使用拼音,不使用无意义简单字母命名 (循环中计数例外 for i in) 命名缩写要谨慎, 尽量是大家认可的缩写 尽量 避免使用全局变量, 用类变量来代替 函数和方法的参数: 类方法:...禁止参数里面 直接写 字符id,用其他替代,例如 asset_id 文档注释(Docstring,即各方法,类的说明文档注释) 所有文档字符串均以 reStructuredText 格式编写,方便 Sphinx...如果为多行,文档字符串中的文本紧接着代表字符串开始的三个引号编写,代表字符串结束的三个引号则自己独立成一行。

    72060

    【Java SE学习】Day6 JavaSE面向对象(下)看着三篇就够了

    非静态方法中,既可以调用非静态的方法或属性,也可以调用静态的方法或属性 static的注意点: 在静态的方法内,不能使用this关键字、super关键字 关于静态属性和静态方法的使用,大家都从生命周期的角度去理解...如何判定属性和方法应该使用static关键字: 关于属性。属性是可以被多个对象所共享的,不会随着对象的不同而不同的。类中的常量也常常声明为static 关于方法。...作用:可以在创建对象时,对对象的属性等进行初始化 如果一个类中定义了多个非静态代码块,则按照声明的先后顺序执行 非静态代码块内可以调用静态的属性、静态的方法,或非静态的属性、非静态的方法 注意:实例化子类对象时...,涉及到父类、子类中静态代码块、非静态代码块、构造器的加载顺序: 由父及子,静态先行。...如果实现类重写了接口中的默认方法,调用时,仍然调用的是重写以后的方法 知识点3:如果子类(或实现类)继承的父类和实现的接口中声明了同名同参数的默认方法,那么子类在没重写此方法的情况下,默认调用的是父类中的同名同参数的方法

    38930

    -1-2 java 面向对象基本概念 封装继承多态 变量 this super static 静态变量 匿名对象 值传递 初始化过程 代码块 final关键字 抽象类 接口 区别 多态

    类:是一组相关的属性和行为的集合 对象:是该类事物的具体体现 成员变量与局部变量 在类中的位置不同   •成员变量 类中方法外   •局部变量 方法内或者方法声明上 在内存中的位置不同   •成员变量...多个类可以称为子类,单独这个类称为父类或者超类。 子类可以直接访问父类中的非私有的属性和行为。 通过extends 关键字让类与类之间产生继承关系。   ...super代表父类的内存空间的标识。 当子父类出现同名成员时,可以用super进行区分 子类要调用父类构造函数时,可以使用super语句。...一个程序文件中只有一个package,可以有多个import。 用来导包中的类,不导入包中的包。 内部类 将一个类定义在另一个类的里面,对里面那个类就称为内部类(内置类,嵌套类)。...•同时可以访问所在局部中的局部变量,但必须是被final修饰的。 内部类访问外部类属性 外部类名称.this.属性名 匿名内部类 就是内部类的简化写法。

    69110

    Java面向对象三大特性详解「建议收藏」

    3.当getter和setter函数参数名和成员函数名重合的时候,可以使用this区别。如: C、Java 中的内部类 内部类( Inner Class )就是定义在另外一个类里面的类。...B、继承的初始化顺序 1、初始化父类再初始化子类 2、先执行初始化对象中属性,再执行构造方法中的初始化。...其实这个过程已经隐式地使用了我们的super关键字。 这是因为如果子类的构造方法中没有显示调用父类的构造方法,则系统默认调用父类无参的构造方法。...那么如果自己用super关键字在子类里调用父类的构造方法,则必须在子类的构造方法中的第一行。 要注意的是:如果子类构造方法中既没有显示调用父类的构造方法,而父类没有无参的构造方法,则编译出错。...12 } 13 } 运行结果: 4.接口和匿名内部类配合使用 接口在使用过程中还经常和匿名内部类配合使用。

    91721

    赶在 520 之前给您来份 Java 的面向对象小抄

    变量的声明 1.1.1. 实例成员变量 这种是实例成员变量的声明,声明的变量在类内都可以使用。可以声明的类型包括:整型、浮点型、字符型、逻辑类型、数组、对象、接口等。...2.1.4. default --- 可修饰类 同一个包内的类的方法都能访问该成员,可以省略不写。 2.1.5....在内部类中需要注意以下几点: 如果成员域具有 static 属性,那么必须要有 final 属性,即 final static; 不能含有 static 属性的成员方法; 创建该内部类的对象实例时,需要先创建外部类的对象...; 不能具有抽象方法或属性,不能有 static 属性的成员变量和方法(假如成员变量具有 static 属性,那么必须要有 final 属性); 匿名类实例对象的方法,通过它父类型的引用变量来访问。...Printable, Addable {} 父类实现了某接口,子类自然也是实现了该接口,因此子类中不必再显示地使用 implements 声明实现了这个接口。

    64220

    来了来了它来了,100条必背JAVA知识点(下)

    ②特殊情况:当子类和父类中定义了同名的属性时,要想在子类中调用父类中声明的属性,则必须显式的使用"super.属性"的方式,表明调用的是父类中声明的属性。...②静态方法中,只能调用静态的方法或属性。非静态方法中,既可以调用非静态的方法或属性,也可以调用静态的方法或属性。 70、在静态的方法内,不能使用this关键字、super关键字(生命周期)。...,对对象的属性等进行初始化 ⑤如果一个类中定义了多个非静态代码块,则按照声明的先后顺序执行 ⑥非静态代码块内可以调用静态的属性、静态的方法,或非静态的属性、非静态的方法 74、实例化子类对象时,涉及到父类...⑤如何在子类(或实现类)的方法中调用父类、接口中被重写的方法。 86、内部类的分类:成员内部类(静态、非静态 )、局部内部类(方法内、代码块内、构造器内)。...87、成员内部类的理解: ①一方面,作为外部类的成员 调用外部类的结构 可以被static修饰 可以被4种不同的权限修饰 ②另一方面,作为一个类 类内可以定义属性、方法、构造器等 可以被final修饰,

    69110

    Java入门必背100条

    局部变量:声明在方法内、方法形参、代码块内、构造器形参、构造器内部的变量 ② 关于权限修饰符的不同 属性:可以在声明属性时,指明其权限,使用权限修饰符。...②特殊情况:当子类和父类中定义了同名的属性时,要想在子类中调用父类中声明的属性,则必须显式的使用”super.属性”的方式,表明调用的是父类中声明的属性。...②静态方法中,只能调用静态的方法或属性。非静态方法中,既可以调用非静态的方法或属性,也可以调用静态的方法或属性。 75、在静态的方法内,不能使用this关键字、super关键字(生命周期)。...,对对象的属性等进行初始化 如果一个类中定义了多个非静态代码块,则按照声明的先后顺序执行 非静态代码块内可以调用静态的属性、静态的方法,或非静态的属性、非静态的方法 79、实例化子类对象时,涉及到父类...91、成员内部类的理解: 一方面,作为外部类的成员 调用外部类的结构 可以被static修饰 可以被4种不同的权限修饰 另一方面,作为一个类: 类内可以定义属性、方法、构造器等 可以被final

    1.2K20

    一篇文章讲清楚Java面向对象三大特性(基础篇)

    万物皆对象,对象是具体的世界事物,面向对象的三大特征封装,继承,多态,封装,封装说明一个类行为和属性与其他类的关系,低耦合,高内聚;继承是父类和子类的关系,多态说的是类与类的关系。...例如定义一个语文老师类和数学老师类,如果不采用继承方式,那么两个类中需要定义的属性和方法如图 1 所示。 ?...使用这种层次形的分类方式,是为了将多个类的通用属性和方法提取出来,放在它们的父类中,然后只需要在子类中各自定义自己独有的属性和方法,并以继承的形式在父类中获取它们的通用属性和方法即可。  ...其实这个过程已经隐式地使用了我们的super关键字。  这是因为如果子类的构造方法中没有显示调用父类的构造方法,则系统默认调用父类无参的构造方法。  ...那么如果自己用super关键字在子类里调用父类的构造方法,则必须在子类的构造方法中的第一行。 要注意的是:如果子类构造方法中既没有显示调用父类的构造方法,而父类没有无参的构造方法,则编译出错。

    1.5K30
    领券