码迷,mamicode.com
首页 > 编程语言 > 详细

python 模块一览

时间:2019-02-18 01:03:41      阅读:239      评论:0      收藏:0      [点我收藏+]

标签:imp   init   port   rom   才有   创建   span   产生   组织   

  1. 一个模块可以对应一个文件
  2. 同一个模块,可以import多次,但只会被导入一次
  3. 模块的导入顺序
    导入模块写在文件最上面
    自己写的和内置的以及扩展的分开
    顺序:内置,扩展,自己写的
    按字母大小写排序
  4. 一行可以import多个模块,使用逗号分割开(建议不这么做,分开导入更清晰)
  5. from import
    # 从一个模块中单独导入一个方法
    from
    time import sleep
  6. import和from import的区别
    import会导入整个模块,比较占内存
    from..import..导入的名字可能和自己写的冲突
  7. from import *
    #作用和import相同,但是会把名字都导入,可能和自己创建的名字产生冲突
    
    #例子
    from time import *
    def sleep():    #产生文件名的冲突,调不到time的sleep
        pass

    #可以在模块中,通过下面的方法,来设置from..import *时导入的名字
    __all__ = [‘time‘,‘sleep‘,...]
  8. 导入模块的过程
    1.先从sys.module查看是否被导入了
    2.如果没有导入,根据sys.path路径找模块
    3.找到了就导入
    4.创建模块的命名空间
    5.执行文件,把文件中的名字都放入命名空间
  9. 给模块起别名
    #使用as关键字
    
    import time as t
  10. 使语句只有直接执行当前模块才执行
    #判断当前的属性__name__是不是__main__
    
    if __name__ == __main__:
        pass
  11. 包是一种通过使用‘.模块名’来组织python模块名称空间的方式。
    
    1. 无论是import形式还是from...import形式,凡是在导入语句中(而不是在使用时)遇到带点的,都要第一时间提高警觉:这是关于包才有的导入语法
    
    2. 包是目录级的(文件夹级),文件夹是用来组成py文件(包的本质就是一个包含__init__.py文件的目录)
    
    3. import导入文件时,产生名称空间中的名字来源于文件,import 包,产生的名称空间的名字同样来源于文件,即包下的__init__.py,导入包本质就是在导入该文件
    
    强调:
    
      1. 在python3中,即使包下没有__init__.py文件,import 包仍然不会报错,而在python2中,包下一定要有该文件,否则import 包报错
    
      2. 创建包的目的不是为了运行,而是被导入使用,记住,包只是模块的一种形式而已,包即模块

python 模块一览

标签:imp   init   port   rom   才有   创建   span   产生   组织   

原文地址:https://www.cnblogs.com/walthwang/p/10393527.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!