Pyhton模块化以及包管理

1.模块化

编程语言中,库、包、模块是用一种概念,是代码组织方式
Python只有一种模块对象类型,为了模块化组织模块的便利,提供了"包"的概念
模块module,指的是python的源代码文件
包package,指的是模块组织在一起的和包名同名的目录及其相关文件

2.导入语句

2.1 import

  • import语句后面只能写到模块为止
In [1]: import functools.WRAPPER_UPDATES # import不能直接导入模块的属性
Traceback (most recent call last):

  File "<ipython-input-1-c5aad56d0707>", line 1, in <module>
    import functools.WRAPPER_UPDATES

ModuleNotFoundError: No module named 'functools.WRAPPER_UPDATES'; 'functools' is not a package

In [2]: import functools # 直接导入模块就可以
  • 局部导入受作用域影响, 例如在函数中导入一个模块,相当于一个普通的局部变量

注意:局部作用域中变量在全局不可见(符合向外不可见,向内可见)

总结:

  • 导入顶级模块,其名称会加入到本地名词空间中, 并绑定到模块对象
  • 导入非顶级模块,只将其顶级模块名称加入到本地名词空间中。导入的模块必须使用完全限定名称来访问
  • 使用的了as,本地只绑定as之后的名称,指代导入的全长限定名模块
In [1]: import os.path  # 相当于导入了os和os.path,但是本地限定名只能看到顶级模块os

In
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值