首页 > 编程语言 >Python __all__

Python __all__

时间:2022-10-17 22:12:41浏览次数:56  
标签:__ grok 定义 spam Python 导出 导入

目录


1. 问题

当时用 from module import *时,希望对从模块或包导出的符号进行精确控制。



2. 解决方案

定义变量 __all__来明确地列出需要导出的内容。

def spam():
    pass

def grok():
    pass

blah = 42
# 只导出 spam、grok
__all__ = ['spam', 'grok']


3. 讨论

尽管强烈反对使用 from module import *, 但是在定义了大量变量名的模块中频繁使用。 如果你不做任何事, 这样的导入将会导入所有不以下划线开头的。 另一方面,如果定义了__all__ , 那么只有被列举出的东西会被导出。

如果你将__all__定义成一个空列表, 没有东西将被导入。 如果__all__包含未定义的名字, 在导入时引起 \(AttributeError\)。



标签:__,grok,定义,spam,Python,导出,导入
From: https://www.cnblogs.com/keye/p/16800907.html

相关文章

  • AtCoder Regular Contest 150
    A考虑枚举每一个区间,考虑如何\(\mathcalO(1)\)判断。如果区间符合条件当且仅当区间内没有\(0\),区间外没有\(1\)。维护一个前缀和即可。点击查看代码#include<b......
  • Ubuntu 环境下安装 Docker
    系统要求Docker目前只能运行在64位平台上,并且要求内核版本不低于3.10,实际上内核越新越好,过低的内核版本容易造成功能不稳定。用户可以通过如下命令检查自己的内......
  • day49-JDBC和连接池05
    JDBC和连接池0511.BasicDAO先来分析一个问题前面我们使用了Apache-DBUtils和Druid简化了JDBC开发,但仍存在以下不足:SQL语句是固定的,不能通过参数传入,通用性不好,需要......
  • 机器学习实战-支持向量机
    1.支持向量机简介英文名为SupportVectorMachine简称为SVM,是一种二分类模型线性可分支持向量机:如下图就可以通过一条红色的直线将蓝色的球和红色的球完全区分开,该直......
  • python接口自动化13-流量回放
    @目录FastTester:快速生成测试用例进行测试简介流程图(设计思路)快速开始一、接口用例集合获取方式一:Fiddler方式二:mitmproxy结合以上两种方式二、执行测试方式1:流量回放,......
  • JS实现控制台简易进度条
    JS实现控制台输出简易的进度条代码效果如下运行环境:vscode+node.js控制台输出进度条的原理暂停效果实现//在js里面可以定义一个延时函数//延时函数,ms为需要......
  • 电脑右边小键盘默认解锁
    1、按“WIN键+R键”组合快捷键,打开运行窗口,输入“regedit”回车,打开注册表管理器。2、在注册表管理器中,依次点击展开“HKEY_USERS\.DEFAULT\ControlPanel\Keyboard项。......
  • 1033 旧键盘打字(JAVA)
    旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现。现在给出应该输入的一段文字、以及坏掉的那些键,打出的结果文字会是怎样?输入格式:输入在2行中分别给出坏......
  • 暑期算法打卡----第一天
    目录​​1、三个数的最大乘积​​​​2、有多少小于当前数字的数字​​​​3、使数组唯一的最小增量​​​​4、B.RisingSand​​​​说在最后✏️​​1、三个数的最大乘积......
  • 【计算机网络实验】NAT配置实验
    【实训目的】掌握内部网络设计过程和私有IP地址使用。验证端口地址转换工作机制。掌握路由器地址转换配置过程。验证私有地址与公有地址之间的转换过程。验证IP分组和TCP报......