sys模块,和json模块


sys模块

        # 主要与python解释器打交道

        import sys


        # print(sys.path)
        # print(sys.version)
        # print(sys.platform)
        # print(sys.argv)  # 获取当前执行文件的绝对路径
        try:
            username = sys.argv[1]
            password = sys.argv[2]
            if username == 'jason' and password == '123':
                print('正常执行文件内容')
            else:
                print('用户名或密码错误')
        except Exception:
            print('请输入用户名和密码')
            print('目前只能让你体验一下(游客模式)')

json模块

        json格式数据:跨语言传输

        import json

        d = {'username': 'jason', 'pwd': 123}
        # 1.将python其他数据转换成json格式字符串(序列化)
        # import json
        # res = json.dumps(d)
        # print(res,type(res))  # {"username": "jason", "pwd": 123}
        # 2.将json格式字符串转成当前语言对应的某个数据类型(反序列化)
        # res1 = json.loads(res)
        # print(res1,type(res1))  # {'username': 'jason', 'pwd': 123} 
        # bytes_data = b'{"username": "jason", "pwd": 123}'
        # bytes_str = bytes_data.decode('utf8')
        # bytes_dict = json.loads(bytes_str)
        # print(bytes_dict,type(bytes_dict))
        """
        暂且可以简单的理解为
            序列化就是将其他数据类型转换成字符串过程
                json.dumps()
            反序列化就是将字符串转换成其他数据类型
                json.loads()
        """
        # 将字典d写入文件
        # with open(r'a.txt','w',encoding='utf8') as f:
        #     f.write(str(d))
        # 将字典d取出来
        # with open(r'a.txt','r',encoding='utf8') as f:
        #     data = f.read()
        # print(dict(data))

        # 将字典d写入文件
        # with open(r'a.txt','w',encoding='utf8') as f:
        #     res = json.dumps(d)  # 序列化成json格式字符串
        #     f.write(res)
        # 将字典d取出来
        # with open(r'a.txt','r',encoding='utf8') as f:
        #     data = f.read()
        # res1 = json.loads(data)
        # print(res1,type(res1))

        # d1 = {'username': 'tony', 'pwd': 123,'hobby':[11,22,33]}
        # with open(r'a.txt', 'w', encoding='utf8') as f:
        #     json.dump(d1, f)
        # with open(r'a.txt','r',encoding='utf8') as f:
        #     res = json.load(f)
        # print(res,type(res))

        d1 = {'username': 'tony好帅哦 我好喜欢', 'pwd': 123,'hobby':[11,22,33]}
        print(json.dumps(d1,ensure_ascii=False))

        """
        # 并不是所有的数据类型都支持序列化
        json.JSONEncoder  查看支持的数据类型
        """

py