第五周日志模块正则和包

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 : 日志格式

 

转载于:https://www.cnblogs.com/gaoyuechen/p/8273541.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值