python类中变量作用域_python 包、模块、类、函数与变量作用域

一、python 包、模块、类、函数与变量作用域的关系

模块

函数、变量

包 是一个 文件夹。包的名字就是文件夹的名字。

模块是一个.py文件;与Java 不同,Java 建议是一个.java文件就写一个类,也就是java的类近似于python的一个模块;与Java不同的是,.py文件中可以写多个类,类名无需与文件名相同

二、包

1、包名+模块名 = 命名空间

2、包下面可以有子包(子文件夹)、包下面还可以有模块,让子包和模块平级

3、包(包括子包)下面,有个特殊的文件__init__.py ,它的作用是标示一个包,没有这个文件,就不认为这个文件夹是个包,而是只认为是个文件夹;__init__.py这个文件中啥也不写也行,写些代码也是可以的。

4、导入平级包中的模块

1460116-20200804213211723-2080372122.png

5、导入下级包-子包中的模块

1460116-20200804220145305-577589819.png

别名:

1460116-20200804220334504-985766043.png

6、直接导入函数/变量

1460116-20200804220452999-1661596486.png

7、内置变量__all__ 与import *

1460116-20200804221848390-613461990.png

1460116-20200804222003271-458709902.png

__all__ 内置变量限制 * 导入时,允许导入的变量或者函数(附加的知识点);在__init__.py 中定义内置变量的话,将会在整个包中都生效的,比如__all__=['a','c'],那么下面的所有模块的变量 在import * 中 都是导入变量a 和变量 c

8、总结

import 导入的是模块

from 模块(包.模块) import 函数/变量

from 包 import 模块 也是可以的 但是和 import 导入的是模块没有区别 所以没这个必要

导入多个函数/变量,这个很熟,不用复习了

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值