zoukankan      html  css  js  c++  java
  • Python核心编程学习日记之模块

    模块

    模块用来组织代码,包是用来组织模块的。自我包含并且有组织的代码片段就是模块

      1. 默认搜索路径修改:一个是启动Python的shell或命令行的PYTHONPATH环境变量。在解释器里的sys模块的sys.path变量保存这些目录路径。
      2. 名称空间是名称(标识符)到对象的映射。执行期间有两个或三个活动的名称空间:局部名称空间,全局名称空间,内建名称空间。Python解释器会首先加载内建名称空间,随后加载执行模块的全局名称空间。执行期间调用函数,创建出局部名称空间
      3. __builtins__模块和__builtin__模块:__builtins__模块包含内建名称空间中内建名字的集合。大多数来自__builtin__模块。__builtins__包含__builtin__的所有名字。
      4. 无限制的名称空间:可以在任何需要放置数据的地方获得一个名称空间。
      5. 〈li> 建议所有的模块在Python模块的开头部分导入。顺序为:Python标准库模块,python第三方模块,应用程序自定义模块。

    导入指定名称:from module import name[, name2[,... nameN]]

    不建议使用from Module import *语句。可以使用import Name as MyName来使用自己喜欢的名字替换原本的名字

    无论导入多少次,模块只被加载一次。加载模块将导致模块被执行。

    1. from __future__import new_feature : 导入将来会逐渐确定的新特性。只imort __futrue__被禁止,引脚为它不会启用所有特性,不许显示的导入指定特性。
    2. Python 支持从ZIP归档文件中导入模块的功能。导入时会把ZIP文件当做目录处理,因此,可以把ZIP文件写入到文件路径中。
    3. 模块内建函数
      1. __import__():import语句调用__import__()函数来完成工作。语法为:
        __import__(module_name[, globals[, locals[, formalist]]])
        
        globals,locals,formlist默认为globals(),locals(),[]。
      2. globals()返回调用者全局名称空间的字典。locals()返回调用者局部名称空间的字典。
      3. reload()重新导入一个已经导入的模块。 :reload(module)
    4. 包是一个有层次的文件目录结构。定义了一个由模块和子包组成的Python应用程序执行环境。包也使用据点属性标识来访问他们的元素。
      1. 对于目录结构,同样可以使用import Upper.sub 和from-import语句。from package.module import *语句使得导入的文件取决于操作系统的文件系统。在__init__.py中加入__all__变量。它是一个由执行该语句时会导入的模块名字组成的列表。
      2. 绝对导入:导入的模块名字必须通过Python路径(sys.path或是PYTHONPATH)来访问。绝对导入已成为默认功能。
      3. 相对导入:import语句总是绝对导入的,相对导入只应用于from-import语句。
    5. 当Python解释器在标准模块下启动时,一些模块会被解释器自动导入。sys.modules变量包含一个由当前载入(完整且成功导入)到解释器的模块组成的字典。模块名为键,位置为值。
    6. 阻止属性导入:如果不想让某个模块属性被“from module import *”导入,给你不想导入的属性名称加上一个下划线(_)
  • 相关阅读:
    分页存储过程
    调存储过程
    winform httplicent调用API
    存储过程,触发器,等等。。。
    C# AJAXform上传图片
    Mysql order by与limit联用出现的问题
    将Sublime Text 3 放到右键中
    Vue-cli构建步骤
    Javascript面试知识点
    position详解
  • 原文地址:https://www.cnblogs.com/xyqhello/p/2877991.html
Copyright © 2011-2022 走看看