zoukankan      html  css  js  c++  java
  • 包,日志字典

    包:

    包是一种通过.模块名来组织模块名称空间的方式

    包就是一种含有__init__.py文件的文件夹,我们创建包的目的就是用文件夹将文件/模块组织起来

    在python3中即使没有__init__.py import也不会报错,在python2中没有__init.py就会报错

    包可以提高程序的结构性和可维护性

    在导入时不管是import 还是from  import  .的左边必须是包,否则会报错

    而在使用时则没有限制

    绝对导入与相对导入
    
    # 绝对导入: 以执行文件的sys.path为起始点开始导入,称之为绝对导入
    #        优点: 执行文件与被导入的模块中都可以使用
    #        缺点: 所有导入都是以sys.path为起始点,导入麻烦
    
    # 相对导入: 参照当前所在文件的文件夹为起始开始查找,称之为相对导入
    #        符号: .代表当前所在文件的文件加,..代表上一级文件夹,...代表上一级的上一级文件夹
    #        优点: 导入更加简单
    #        缺点: 只能在导入包中的模块时才能使用
          #注意:
            1. 相对导入只能用于包内部模块之间的相互导入,导入者与被导入者都必须存在于一个包内
            2. attempted relative import beyond top-level package # 试图在顶级包之外使用相对导入是错误的,言外之意,必须在顶级包内使用相对导入,每增加一个.代表跳到上一级文件夹,而上一级不应该超出顶级包

    import os
    #日志相关的配置
    BASE_DIR=os.path.dirname(os.path.dirname(__file__))
    standard_format='%(asctime)s-task%(name)s-%(filename)s-%(lineno)d'
    '%(levelname)s-%(message)s'
    simple_format='%(filename)s-%(lineno)d-%(levelname)s-%(message)s'
    fh1_path=os.path.join(BASE_DIR,'log','a1.log')
    fh2_path=os.path.join(BASE_DIR,'log','a2.log')
    #log配置字典
    LOGGING_DIC={
    'version':1,
    'disable_existing_loggers':False,
    'formatters':{
    'standard':{
    'format':standard_format
    },
    'simple':{
    'format':simple_format
    }
    },
    'filters':{},
    'handlers':{
    #打印到终端的日志
    'ch':{
    'level':'DEBUG',
    'class':'logging.StreamHandler',#打印到终端,
    'formatter':'simple'
    },
    #打印到a1.log文件的日志
    'fh1':{
    'level':'DEBUG',
    'class':'logging.FileHandler',#保存到文件
    'formatter':'standard',
    'filename':fh1_path,#日志文件的路径
    'encoding':'utf-8'#日志文件的编码
    },

    },
    'loggers':{
    '':{
    'handlers':['fh1','fh2','ch'],
    'level':'DEBUG'
    },
    },
    }


  • 相关阅读:
    Building a Space Station POJ
    Networking POJ
    POJ 1251 Jungle Roads
    CodeForces
    CodeForces
    kuangbin专题 专题一 简单搜索 POJ 1426 Find The Multiple
    The Preliminary Contest for ICPC Asia Shenyang 2019 F. Honk's pool
    The Preliminary Contest for ICPC Asia Shenyang 2019 H. Texas hold'em Poker
    The Preliminary Contest for ICPC Asia Xuzhou 2019 E. XKC's basketball team
    robotparser (File Formats) – Python 中文开发手册
  • 原文地址:https://www.cnblogs.com/fushaunglin/p/9457144.html
Copyright © 2011-2022 走看看