当前位置: 首页 > 面试题库 >

Python中“ __package__”属性的用途是什么?

严天逸
2023-03-14
问题内容

我只想知道 到底__package__什么 意思 ?甚至在SO上也没有在官方文档中找到任何解释。

如果您能提供一些例子,我将非常高兴。


问题答案:

请参阅PEP
366
和导入系统参考文档:

提议的主要更改是引入了新的模块级别属性__package__。如果存在,则相对导入将基于此属性而非模块__name__属性。

* __package__应该设置模块的属性。它的值必须是字符串,但可以与其值相同__name__。如果该属性设置为None或丢失,则导入系统将使用更合适的值填充该属性。当模块是软件包时,其__package__值应设置为__name__。如果模块不是软件包,__package__则对于顶级模块或子模块,应将其设置为空字符串,并将其设置为父软件包的名称。有关更多详细信息,请参见PEP
366


因此,对于位于中的模块foo/bar/baz.py__name__将设置为foo.bar.baz,并将__package__其设置为foo.bar,而同时对和属性foo/bar/__init__.py都具有。foo.bar``__name__``__package__



 类似资料:
  • 本文向大家介绍JavaScript中.stack属性的用途是什么?,包括了JavaScript中.stack属性的用途是什么?的使用技巧和注意事项,需要的朋友参考一下 Error对象的stack属性提供了有关跟踪哪些函数,以什么顺序,从哪个行和文件以及使用什么参数调用的跟踪。堆栈字符串从最近的调用继续到较早的调用,并返回到原始的全局范围调用。它类似于Java中的堆栈跟踪。 示例 输出结果 这将给出

  • 问题内容: 我正在学习node.js并表示,我想知道./package.json文件中的“私有”属性是用来做什么的吗? 问题答案: 取自本网站https://docs.npmjs.com/files/package.json#private 如果您在package.json中设置“ private”:true,则npm将拒绝发布它。 这是防止意外发布私有存储库的方法。

  • 这个豆子“状态”: 使用ajax“成功”回调通过网络发送: 这里需要注释@JsonProperty吗?使用它有什么好处?我想我可以删除这个注释而不会产生任何副作用。 正在阅读关于https://github.com/FasterXML/jackson-annotations/wiki/Jackson-Annotations我不知道什么时候需要用这个?

  • 问题内容: 我编写了一个脚本,该脚本具有多个线程(用创建),该线程从using中获取URL ,然后处理HTML。我是多线程编程的新手,无法理解该函数的用途。 当为空时,它将自动返回异常。所以我不明白每个线程都需要调用该函数。我们知道当队列为空时我们已经完成了队列,所以为什么我们需要通知它工作线程已完成工作(与队列无关,因为他们从队列中获得了URL) ? 有人可以给我提供一个代码示例(理想情况下使用

  • 本文向大家介绍启用属性,索引和存储的用途是什么?相关面试题,主要包含被问及启用属性,索引和存储的用途是什么?时的应答技巧和注意事项,需要的朋友参考一下 enabled属性适用于各类ElasticSearch特定/创建领域,如index和size。用户提供的字段没有“已启用”属性。 存储意味着数据由Lucene存储,如果询问,将返回这些数据。 存储字段不一定是可搜索的。默认情况下,字段不存储,但源文

  • 问题内容: 我在python中有一个问题。 文档说这是一个类实例所属的类。因此,我进行了一系列实验: 一切顺利。 然后我输入如下代码: 从上面的代码中,我认为也许等于或,但是以下代码使我感到惊讶: 为什么更改了,但仍然保持在3?而且,当我改变时,变得。世界到底是什么? 问题答案: “从以上代码中,我认为NewCounter1.count等于NewCounter1。class.count” 问题是,