Python文件名的下划线前缀是什么?

What is the underscore prefix for python file name?(Python文件名的下划线前缀是什么?)
本文介绍了Python文件名的下划线前缀是什么?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

cherryPy为例,有如下文件:

  • __init__.py
  • _cptools.py

它们有什么不同?这意味着什么?

推荐答案

__...__表示保留的名称(包括文件名和其他名称)。您不应使用双下划线表示法为编造您自己的名称;如果您使用现有名称,则它们具有特殊功能。

在这个特定的示例中,__init__.py定义了包的‘main’单元;它还会导致Python将特定目录视为一个包。它是您调用import cherryPy时使用的单位(cherryPy是一个目录)。这在Modules tutorial中有简要说明。

另一个示例是__eq__方法,它为类提供相等比较。您可以直接调用这些方法(例如,当您使用==运算符时,您可以隐式使用它们);然而,更新的Python版本可能定义更多这样的方法,因此您不应该发明您自己的__名称,因为它们可能会发生冲突。您可以在Data model文档中找到相当详细的此类方法列表。

_...通常用作"内部"名称。例如,以_开头的模块不应该直接使用;类似地,以_开头的方法应该是私有的,依此类推。这只是一种惯例,但你应该尊重它。

这篇关于Python文件名的下划线前缀是什么?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Leetcode 234: Palindrome LinkedList(Leetcode 234:回文链接列表)
How do I read an Excel file directly from Dropbox#39;s API using pandas.read_excel()?(如何使用PANDAS.READ_EXCEL()直接从Dropbox的API读取Excel文件?)
subprocess.Popen tries to write to nonexistent pipe(子进程。打开尝试写入不存在的管道)
I want to realize Popen-code from Windows to Linux:(我想实现从Windows到Linux的POpen-code:)
Reading stdout from a subprocess in real time(实时读取子进程中的标准输出)
How to call type safely on a random file in Python?(如何在Python中安全地调用随机文件上的类型?)