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

python 2 :包管理

时间:2018-11-28 19:04:08      阅读:166      评论:0      收藏:0      [点我收藏+]

标签:冲突   添加   包管理   拆分   区别   .class   pack   路径   加载   

1. package.module
  • 一个模块就是一个包含pytho代码的文件, 后缀名成是.py就可以,模块就是个python文件
    ?
  • 使用模块进行拆分程序,方便维护;增加复用率;当做命名空间使用,避免命名冲突
    ?
  • 模块的定义和普通文件无很大区别
    ?
  • 导入
    ?
    • 假如模块名称直接以数字开头,需要借助importlib帮助:a = importlib("123.say()")
      ?
    • import module_name ///module_name.function_name ///module_name.class_name
      ?
    • import 模块 as 别名 用法和直接用类似
      ?
  • 有选择的导入
    ?
    • from module_name import func_name, class_name
    • 此方法使用的时候可以直接使用导入的内容,不需要前缀
    • from ... import *
    • 此方法导入也会导入自动处理的语句:如print("hello")
    • 使用 if _name_ == "_main_" 可以忽略不想要的输入

2 . 模块的搜索路径和存储

  • sys.path (列表)属性可以获取路径列表
  • 添加搜索路径: sys.path.append(dir)
  • 模块的加载顺序

    1.搜索内存中已经加载好的模块
    2.搜索python的内置模块
    3.搜索sys.path路径

3 包

  • 用于将模块包含在一起的文件夹就是包
    |---包
    |---|--- init.py 包的标志文件
    |---|--- 模块1
    |---|--- 模块2
    |---|--- 子包(子文件夹)
    |---|---|--- init.py 包的标志文件
    |---|---|--- 子包模块1
    |---|---|--- 子包模块2
  • 导入
    • import package_name
      • 直接导入一个包,默认使用_init_.py中的内容
        ?
    • from ... import 导入
      • from package import module1, module2, module3, .....
      • 此种导入方法不执行__init__的内容

python 2 :包管理

标签:冲突   添加   包管理   拆分   区别   .class   pack   路径   加载   

原文地址:http://blog.51cto.com/14083201/2323360

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