文档章节

Python __all__的作用

Alex142857
 Alex142857
发布于 2017/05/10 18:45
字数 242
阅读 271
收藏 0

1.问题描述

在研读python model 源码时,会看到一些*.py文件或者__init__.py 中会使用 __all__ 。对于__all__ 具体所其的作用是什么?在此对查取结果进行总结下。

2.总结

(1) 在__init__.py文件中

表示形式:

__all__=["module_a","module_b"]

在使用 from package_name import * 时 , 表示import 该package 中的 两个module及 两个module相关的类、方法等。

(2) 在普通的*.py中

表示形式:

__all__=["class_name","function_name"]

在使用 from module_name import * 时,表示import 该module中的__all__中所列出的。

使用注意事项:

(1) 在普通的*.py中, 使用__all__ 时,可以使用__all__列出的 类、函数、变量等,不使用__all__时会使用module中的所有不以下划线开头的成员。

(2)__all__只能影响到 from <package/module> import * 这种import 方式, 对于from <package/module>  import  <member>的 import 方式没有影响。

(3) __all__ 的数据类型:List or Tuple (不确定, 待验证其他)

© 著作权归作者所有

共有 人打赏支持
Alex142857

Alex142857

粉丝 3
博文 115
码字总数 11877
作品 0
朝阳
程序员
私信 提问
Python多版本神器-Pyenv

Python多版本神器-Pyenv 一、简介 使用pyenv可以在一个操作系统上使用多个python版本,自由切换,无比顺畅。它的使用不依赖于Python,是一个简单、独立的纯 shell 脚本工具。 二、Pyenv安装 ...

PowerMichael
2018/06/26
0
0
浅析Python中的struct模块

最近在学习python网络编程这一块,在写简单的socket通信代码时,遇到了struct这个模块的使用,当时不太清楚这到底有和作用,后来查阅了相关资料大概了解了,在这里做一下简单的总结。 了解c...

疯子张
2014/10/29
0
0
VSCode 配置python开发环境

vscode来写python,配置灵活,界面美观,是个非常好的选择。我这里是在ubuntu系统下配置vscode的python3开发环境,当然也可以参照本文在其它操作系统下配置vscode的python开发环境。 1 安装插...

whltian
01/03
0
0
你想要的Python面试都在这里了【315+道题】

写在前面 近日恰逢学生临近毕业,课程后期大家“期待+苦逼”的时刻莫过于每天早上内容回顾和面试题问答部分【临近毕业每天课前用40-60分钟对之前内容回顾、提问和补充,专挑班里不爱说话就的...

p柯西
2018/06/12
0
0
每周一个 Python 模块 | functools

functools 是 Python 中很简单但也很重要的模块,主要是一些 Python 高阶函数相关的函数。 该模块的内容并不多,看 官方文档 也就知道了。 说到高阶函数,这是函数式编程范式中很重要的一个概...

yongxinz
2018/11/12
0
0

没有更多内容

加载失败,请刷新页面

加载更多

JFinal开发的旅游线路营销Saas平台演示系统我部署了一个

今天部署了一个旅游线路营销管理系统的演示版: 演示地址:http://lvyou.jfinalxueyuan.com 演示账号:(暂时只给一个门店版的吧,批发商和总部的如果需要 演示看看 单独联系我微信:1876673...

山东-小木
59分钟前
2
0
如何学习大数据技术

学习大数据技术,首先要明确大数据的概念。 大数据的概念作者认为有如下几点: 1.数据的来源多样性。例如关系数据库+文本+excel等 2.数据量大。TB级别的数据。 3.业务应用领域。实时性高与实...

董黎明
今天
3
0
开箱即用(out-of-box)的Redis序列号生成器,不用再写任何代码,你值得拥有

先看整体效果 把简单的东西“傻瓜化”是软件开发追求的目标之一。请看下图: 左边是在 application.yml 里配置了3个生成器,右边可以直接注入到代码中使用,注意,不用写任何代码。这酸爽。 ...

花漾年华
今天
1
0
算法我也不知道有没有下一个---一个题目的开端(索引堆与图)

病痛了一周,折磨来折磨去,终于还是平静了下来,现在能把上周末"贯穿"学到的最后一个基础数据结构的知识给沉淀沉淀了。也是即将再单位分享的东西:图论。这东西,想当年大二,学校的时候,只...

心中的理想乡
今天
1
0
Synchronized和Lock的区别

锁类型: 可重入锁:在执行对象中所有的同步方法时,不必再次去获取锁 可中断锁:在等待获取锁过程中可中断 读写锁:对线程的读写分为两个部分,读过程中多线程可一起访问readLock,写过程中...

最胖的瘦子
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部