zoukankan      html  css  js  c++  java
  • python基础(十三)模块的定义、导入

    '''
    1、定义:
    (1)模块:
    用来从逻辑上组织python代码(变量、函数、类,逻辑是实现一个功能)
    本质是.py结尾的python文件
    (2)包:
    用来从逻辑上组织模块的
    本质是一个目录(必须带有__init__.py文件)
    2、导入:
    import 文件名
    import 文件名A,文件名B
    form 文件名 import * #导入该文件中所有的内容(变量、方法等;相当于把该文件的所有代码复制当前文件中)
    form 文件名 import 方法(只有名字) as 自定义一个方法名
    form 文件名 import 方法1(只有名字) as 自定义一个方法名,方法2(只有名字) as 自定义一个方法名
    3、import 的本质:
    import 文件A-->把文件A的代码解释了一遍,赋值给文件A(相当于A = 'A.py')。调用B变量:A.B;调用C方法:A.C()
    找到A文件:
    会先在sys.path.py中找,若找不到会报错,这时需要添加一个环境变量到sys.path.py文件中
    import sys,os
    print( os.path.abspath(__file__) ) #abspath:获取路径。__file__:当前文件的文件名
    print( os.path.dirname( os.path.abspath(__file__) ) ) #dirname:获取目录名(相当于返回上一层),加os.path.dirname()可以一直返回
    BASE_DIR = os.path.dirname( os.path.dirname( os.path.abspath(__file__) ))
    sys.path.append(BASE_DIR) #append:添加,但会加到最后
    sys.path.insert(0,BASE_DIR) #insert:可以用它插入到第一条
    添加成功
    form 文件A import B变量,C方法-->把文件A的B变量,C方法在当前文件中执行了一遍,可直接调用。调用B变量:print(B);调用C方法:C()
    import 包A-->解释包A下的__init__.py文件
    ---挎包调用---
    文件目录结构:
    项目名A
    包B
    test1.py
    包C
    包D
    test2.py
    test2.py文件中要调用test1.py文件的方法
    先把项目名A设置成环境变量:
    sys.path.append( os.path.dirname( os.path.dirname( os.path.dirname( os.path.abspath(__file__) ) ) ) )
    在用from执行test1.py文件内容
    from 包B import test1
    可以随意调用test1文件中的任何内容了
    name()
    4、导入优化:
    若在一个py文件中多次调用模块中的方法,可以用from...impor...方法,节省时间,不必每次调用都读取了
    5、模块的分类
    分为三类:分别是标准库(内置模块)、开源模块(第三方模块)、自定义模块
    '''
  • 相关阅读:
    网页HTML到8.20前
    数据库SQLServer
    构建之法读后感
    VS2013 生成安装文件
    工大助手(自动化部署)
    工大助手(用户名、密码错误提示)
    工大助手(验证码错误提示)
    工大助手(加权成绩计算)
    Wireshark插件编写
    微软认知服务——人脸识别
  • 原文地址:https://www.cnblogs.com/zbvc/p/13027217.html
Copyright © 2011-2022 走看看