码迷,mamicode.com
首页 > 其他好文 > 详细

第五周日志模块正则和包

时间:2018-01-12 11:37:03      阅读:165      评论:0      收藏:0      [点我收藏+]

标签:改名   引用   没有   模块   gpo   格式化   and   mod   关键字   

1.模块的使用



2.为什么要使用模块
    1.从文件级别组织程序,更方便管理
    2.引用别人写的,提升效率
3.如何实用模块  import spam
    第一次导入模块发生几件事:
    1.产生一个新的名称空间
    2.运行原文件代码产生的名字都存放在1的名称空间中
    运行过程中gloabl关键字指向改名称空间

    当前文件的名称空间sapm 名称空间指向了spam.py运行文件的名称空间

    def read1():
        print(money)

    import spam
    import spam #重复导入时重复引用不是重新加载,不会重复加载
    money=1

    spam.money #原来属性的不会冲突
    #引用的源文件的属性
    spam.read1

    强调:宝导入的模块在执行的过程中使用自己的独立的名称空间.

    2.起别名
    import spam as  sm

    print(sm.money)

    3.一行导入多个模块
    import time,sys,spam

    4.如何使用模块
    from 模块 import 名字

    直接用名字
    优点:引用方便
    缺点:容易和当前名称空间产生冲突

    from span import money as  m
    from span import money.read1
    from span import *  #名字全部倒入
    #* 容易冲突
    #_money  下划线开始的名字* 无法导入

    5.python 文件的两种用途

        1.直接运行,当做脚本执行
        2.当做模块被导入使用

        __name__的值在引用的时候就是文件名spam

        __name__ 在本地引用的时候就是__main__
     6.模块的搜索路径

        1. 内存 ---> 内置模块 ---> 自己定义的模块在sys.path
        查找先在内存里面查找

        [‘D:\\PycharmProjects\\wadsd\\day5‘, ‘D:\\PycharmProjects\\wadsd‘,
        执行文件所在的文件夹
         ‘D:\\Python36\\python36.zip‘, ‘D:\\Python36\\DLLs‘,
         zip相当于文件夹
        ‘D:\\Python36\\lib‘, ‘D:\\Python36‘, ‘D:\\Python36\\lib\\site-packages‘]
        print(sys) # 内置模块C语言写的
        <module ‘sys‘ (built-in)>

        sys.path.append(r‘D:\PycharmProjects\wadsd\day5\02_包\包的使用.py‘)

        sys.path路径加上就可以找到包
        或者放入同一路径

        import  spam,time

        time,sleep(10)
        import span

二 包
    包就是文件夹,组织起来调用
    包就是包含了__init__.py的文件夹
    可以往改文件夹下放一堆子模块.
    导入调用
    py3的时候包下面没有init.py文件也不会报错.py2不行

    包的使用导入时

    但凡是在导入时出现点,这是导入包才有的语法
    点的左边必须是一个包
    使用的时候没有这种限制

    包的导入是在以当前执行文件的文件夹下,为相对路径进行查找对应关系

    from 包 import

    从哪里导入什么

    import sys

    sys.path.append("主程序目录")
    sys.path.append("ATM")


5.日志模块的详细用法;
    1.logger 产生日志
    logger1=logging.getLogger(‘访问日志‘)

    2.Filter 几乎不用

    3.Hnaderler:接收logger传过来的日志,进行日志格式化,
        可以打印到终端,也可以打印到文件

        sh =logging.StreamHanderler() 打印到终端.

        fh1=logging.FilterHandler(‘s1.log‘,encoding=‘utf-8‘)

        logger1.setLevel(30)
        sh.setLevel(10)
    4. Formatter : 日志格式

 

第五周日志模块正则和包

标签:改名   引用   没有   模块   gpo   格式化   and   mod   关键字   

原文地址:https://www.cnblogs.com/gaoyuechen/p/8273541.html

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