zoukankan      html  css  js  c++  java
  • python基础|模块

    1 模块简介

      在python中常见的模块有三种,在python解释器中的内置模块,第三方模块和自定义模块。模块的有使用python编写的文件,有已被编译为共享库或DLL的C或C++扩展,也有使用C编写连接到python解释器的内置模块和把一些列模块组织起来的文件(文件包)。

      python使用模块内置模块,第三方模块以及内置模块,是python的一大特点。大大提高了开发效率。使用自定义模块使开发效率大大提高。自定义模块也可以减少代码冗余。

    2 模块导入

      python中使用模块,必须明白执行文件和被导入的模块。

      导入模块有两种方法 import 模块名 和 from 模块名 import 模块内的对象。首先在pycharm中同级文件夹下创建两个文件,例如start.py和m1.py文件。在m1文件内写下面代码。这是使用import+模块名的方法导入,这种方式执行文件start,被执行文件m1。start在使用m1中的变量时,需要加前缀模块名.使用对象。这种指名道姓,不会与start文件相同名字的变量冲突。

    # m1文件中的代码
    def func():
        print('from 01 of func')
    
    # start文件中的代码
    import m1   # 导入m1文件
    m1.func()     # 执行m1文件中的函数function()
    
    >>>from 01 of func

      在上面的模块调用,实质上经历三个步骤。第一步在start文件内创建一个模块的名称空间,第二部执行m1文件中的代码,将执行过的代码放在m1的名称空间。第三步继续执行start的代码,执行到m1.func()。执行该函数在m1中的代码。

      如过被执行文件名过于繁杂,还可给被调用文件名起个别名。import 模块名 as 别名。在下面需要调用该文件是。前缀名可以用别名来替代。此外,import可以同时导入多个模块,在每个模块名用逗号隔开即可。但不建议使用,因过多的模块,使程序读取来不清晰。

    # 使用from 模块名 import 模块内的对象
    from m1 import func
    func()
    
    >>>from 01 of func

      这是另一种导入模块的方法,这种方法可以精准的导入m1文件内的变量对象。在使用时可以直接使用,但是执行文件有相同变量名,在执行时会有冲突。

      需要注意的是,执行文件对模块的搜索优先级是首先搜索内存中的模块,就是内置空间的模块,最后sys.path中的模块。文件被导入都是参考执行在sys.path的位置。

      文件导入有绝对导入和相对导入。以执行文件的在sys.path中的位置查找导入称之为绝对导入,执行文件与被导入的模块中都可以使用。相对导入是当前所在文件位置查找。.代表当前所在文件的文件加,..代表上一级文件夹,...代表上一级的上一级文件夹。使用方便,但不能在被执行文件使用。

    # 在被执行文件打印
    print(__file__)
    >>>main
    
    # 被调用时
    >>>m1   #模块名

      软件开发目录规范

      软件开发目录规范在一个项目文件夹下分文件夹做项目。一个项目开发下的子文件夹大致有者八个文件:1,bin文件夹,这个文件内有装有项目启动文件(start)。2, conf文件夹,这个文件夹下装配置文件(setting)。3, lib文件,装有公共功能的文件(common)。4,core文件夹,装有核心逻辑的文件(src)。5,log文件夹装有日志。7,db文件,装有数据文件。8,Readme文本文件,对项目的说明都可以写在这里。

      

      

      

  • 相关阅读:
    java学习笔记(day21)
    linux软件管理之rpm管理rpm包
    linux软件管理之yum管理rpm包
    linux软件管理之概述
    linux存储管理之磁盘配额
    linux存储管理之文件系统
    linux存储管理之mount挂载
    linux存储管理之磁盘阵列
    linux文件管理之链接文件
    linux存储管理之自动挂在
  • 原文地址:https://www.cnblogs.com/huaiXin/p/11196779.html
Copyright © 2011-2022 走看看