• python3 json、logging、sys模块


    json模块

    import json
    
    dic = {'name':'egon','age':32}
    # ------------------------------>序列化
    f = open('json.txt','w')
    data = json.dumps(dic)
    print(data)
    print(type(data))
    f.write(data)
    f.close()
    
    # ------------------------------>返序列化
    f = open('json.txt','r')
    data = f.read()
    dic1 = json.loads(data)
    print(dic1)
    print(type(dic1))
    f.close()

    二、logging模块

    import logging
    
    logger = logging.getLogger()
    fh = logging.FileHandler('test.log')    # 用于写入日志文件
    ch = logging.StreamHandler()            # 用于输入到终端
    
    # 自定义格式
    formatter = logging.Formatter('%(asctime)s-%(name)s-%(levelname)s-%(message)s')
    
    fh.setFormatter(formatter)
    sh.setFormatter(formatter)
    
    logger.addHandler(fh)   #logger对象可以添加多个fh和sh对象
    logger.addHandler(sh)
    
    logger.debug('logger debug message')
    logger.info('logger info message')
    logger.warning('logger warning message')
    logger.error('logger error message')
    logger.critical('logger critical message')

    三、sys模块

    import sys
    sys.exit(n)  退出程序,正常退出时exit(0)
    sys.argv    命令行参数List,第一个元素是程序本身路径
    sys.path    返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值

    sys.exit()
    import sys
    
    count=1
    while count<10:
        print(count)
        if count==8:
            sys.exit()  # 退出程序
        count+=1
    
    print("ending")

      sys.argv

    # cmd终端输入python sys模块.py egon 666
    
    print("begin..... ")
    
    ret=sys.argv  #  [sys模块.py',"egon",666]
    print(ret)    #  ['sys模块.py', '-u', 'egon', '-p', '666']
    
    username=ret[1]
    password=ret[2]
    
    if username=='egon' and password=="666":
        print("login")

      sys.path

    import sys
    
    print(sys.path)# [“C:UsersAdministratorPycharmProjectspython5期day13”,"python环境"]  :执行文件的目录会添加到sys.path
    
    Base_dir=r"C:UsersAdministratorPycharmProjectspython5期day12"
    sys.path.append(Base_dir)
    
    import lesson1  # 自定义的模块
    lesson1.foo()
  • 相关阅读:
    Java LinkedList 源码剖析
    Java并发编程:线程池的使用
    Java 线程池的原理与实现
    多线程JAVA篇(一)
    软件开发中会用到的图
    linux文件名匹配——通配符使用
    XModem协议
    dmesg 命令七种用法
    定位精度单位CEP、RMS、2DRMS常识
    5G NR 技术简介
  • 原文地址:https://www.cnblogs.com/lucaq/p/7074785.html
Copyright © 2020-2023  润新知