• python学习,day5:模块的定义、导入


    1、定义

    模块:用来从逻辑上组织PYTHON代码,(变量,函数,类,逻辑:实现一个功能),本质就是。py结尾的python文件(文件名:test.py,对应模块名就是:test)

    包:本质就是一个目录(必须带一个__init__.py的文件)

    2、导入方法

    import module_name

    import module_name,module_name2

    from module_name import *   #不建议使用 把所有模块中的代码都代入,同名容易冲突

    from module_name import logger as logger_alex    #给模块中的程序起一个别名,可以避免冲突

    调用的模块 module alex

    # coding=utf-8
    # Author: RyAn Bi
    name= 'alex'
    def say_hello():
        print('hello')
    
    def logger():
        print('im logger in module')
    

     

    主程序

    # coding=utf-8
    # Author: RyAn Bi
    
    #import module_alex
    from module_alex import name,logger as logger_alex
    
    
    def logger():
        print('im logger in main')
    
    logger()
    
    logger_alex()
    print(name)   #可以导入参数
    

    3、import的本质(路径搜索和搜索路径)

    导入模块的本质就是把python文件解释一遍(import test     test = ‘test.py all code’)

    (from test import ml ml = “code”)

    导入包的本质,就是解释包里的init文件

    import module_name-----> module_name.py ---->module_name.py 的路径--->新的路径,加入环境变量(sys.path)

    import sys,os
    
    print(sys.path)   #就是一个路径的列表
    
    print(os.path.abspath(__file__))  #当前目录的路径
    print(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) #返回到上上级目录,就是调用模块的父目录
    sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) #将新目录加到环境变量中
    import module_alex as x
    
    
    x.say_hello
  • 相关阅读:
    (译)linux系统关于命令echo的15个例子
    linux之grep实例讲解
    linux grep练习
    (译)"usermod"命令使用完全指导---15个练习例程截图
    linux分区,文件系统,目录结构概述
    Linux 配置YUM
    Linux 强制安装rpm 包
    $LANG、$NLS_LANG 记录一下
    Oracle性能诊断艺术-相关脚本说明
    datafile相关(add、rename、drop)
  • 原文地址:https://www.cnblogs.com/bbgoal/p/11352762.html
Copyright © 2020-2023  润新知