python中的_all_用法

python没有像java,c++等的看见性控制,如java的private、protect、public。python只能够靠约定来对控制可见性。python分为包外和包内可见效。包外的可见效是通过在包里面的__init.py__里面设置__all__来控制包内的对象和方法等对包外的可见性,如:如果设置了__all__,就相当于一个白名单,如果这个包内的类或方法不在__all__里面,就相当于没有上白名单,外面的包就不能正常使用这些没有上白名单的方法和类。如果没有设置__all__,那么外面可以通过包内的约定来显示可见性。python通过private对应两个下划线__,protected对应一个下划线_,public 对应没有下划线,来约定类似于java的可见性控制。

以下是__init.py和__all__的关系和位置:

from __future__ import absolute_import

from .ABuPickBase import AbuPickTimeWorkBase, AbuPickStockWorkBase

from .ABuPickStockMaster import AbuPickStockMaster
from .ABuPickStockWorker import AbuPickStockWorker

from .ABuPickTimeWorker import AbuPickTimeWorker
from .ABuPickTimeMaster import AbuPickTimeMaster

from . import ABuPickStockExecute
from . import ABuPickTimeExecute
# noinspection all
from . import ABuAlpha as alpha

__all__ = [
    'AbuPickTimeWorkBase',
    'AbuPickStockWorkBase',
    'AbuPickStockMaster',
    'AbuPickStockWorker',
    'AbuPickTimeWorker',
    'AbuPickTimeMaster',

    'ABuPickStockExecute',
    'ABuPickTimeExecute',
    'alpha'
]

 

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值