Kai*_*fei 62 naming coding-style conventions python-2.7
在编写python模块和函数时,我有一些应该暴露给外人的"公共"函数,但是其他一些"私有"函数只能在本地和内部看到和使用.
我理解在python中没有绝对的私有函数.但是,区分"公共"功能和"私人"功能的最佳,最整洁或最常用的风格是什么?
我列出了一些我所知道的风格:
__all__在模块文件中使用以指示其"公共"函数(python __all__模块级变量是什么?)人们使用其他任何想法或约定吗?
非常感谢你!
Eri*_*ick 91
从Python的Class模块文档:
Python中不存在除对象内部之外无法访问的私有"实例变量".但是,大多数Python代码都遵循一个约定:前缀为下划线的名称(例如_spam)应被视为API的非公共部分(无论是函数,方法还是数据成员) .它应被视为实施细节,如有更改,恕不另行通知.
由于类私有成员有一个有效的用例(即为了避免名称与子类定义的名称冲突),因此对这种称为名称修改的机制的支持有限.形式__spam的任何标识符(至少两个前导下划线,最多一个尾随下划线)在文本上用_classname__spam替换,其中classname是当前类名,其中前导下划线被剥离.只要它出现在类的定义中,就可以在不考虑标识符的句法位置的情况下完成这种修改.
| 归档时间: |
|
| 查看次数: |
46526 次 |
| 最近记录: |