os/json/jsonpath三个模块

os模块

  1. os.getcwd() 获取当前工作目录

  2. os.path.join(path1,path2) 将多个路径组合后返回

  3. os.chdir(path) 切换到path目录下

  4. os.listdir(path) 获取path中的所有的文件,包括隐藏文件

  5. os.remove(‘file.name‘) 删除当前目录中的该元素

  6. os.system(‘bash command‘) 运行shell命令, 直接显示

  7. os.getatime(path) 获取该目录最后的存取时间

    os.path.getatime(‘/Users/hui/Documents/works‘)
    1578385333.0
    
  8. os.getmtime(path) 获取该目录最后的修改时间

  9. os.path.exist(path) 判断该path是否存在

  10. os.path.split(path) 将path分割成目录和文件名二元组返回

  11. os.path.dirname(path) 返回path的目录。其实就是os.path.split(path)的第一个元素

    os.path.split(‘/Users/hui/Documents‘)
    (‘/Users/hui‘, ‘Documents‘)
    os.path.dirname(‘/Users/hui/Documents‘)   
    ‘/Users/hui‘
    
  12. os.path.abspath(path) 返回path的绝对路径

json模块

  1. josn 通常用于web客户端与服务器之间数据交换,即字符串类型与python基本数据类型之间转换。
  2. 常用方法:
    • Json.loads(obj) “json_str” — dict or list
    • Json.dumps(obj) dict or list — "json_str"
  3. json字符串有两种形式:
    • json_dict ‘{"a":"b", "c":"d"}‘ json.loads()后变为python中的dict
    • json_list ‘[1,2,3,4,5]‘ json.loads()后变为python中的list
  4. 将python中的dict数据类型,转为json字符串,并写入文件
    • json.dump(dict_obj, open(‘file_name‘, ‘w‘))
  5. 将文件中的json字符串,转为python中的dict,并赋值给变量
    • result = json.load(open(‘file_name‘, ‘r‘))

jsonpath模块

# -*- coding: utf-8 -*-

from jsonpath import jsonpath

dict_obj = {
    "error_code": 0,
    "stu_info": [
        {
            "id": 314,
            "name": "矿泉水",
            "sex": "男",
            "age": 18,
            "addr": "北京市昌平区",
            "grade": "摩羯座",
            "phone": "18317155663",
            "gold": 100,
            "cars": [
                {"car1": "bmw"},
                {"car2": "ben-z"},
            ]
        }
    ]
}

result = jsonpath(dict_obj, ‘$..car2‘)  # 模糊匹配
print(result, ‘\n‘)
result = jsonpath(dict_obj, ‘$.stu_info‘)  # 取到stu_info这里的所有内容
print(result, ‘\n‘)
result = jsonpath(dict_obj, ‘$.stu_info[0]‘)  # 取到stu_info里的第1个元素
print(result, ‘\n‘)
result = jsonpath(dict_obj, ‘$.stu_info[0].id‘)  # 取到stu_info里的第1个元素中的id
print(result)
[‘ben-z‘] 

[[{‘id‘: 314, ‘name‘: ‘矿泉水‘, ‘sex‘: ‘男‘, ‘age‘: 18, ‘addr‘: ‘北京市昌平区‘, ‘grade‘: ‘摩羯座‘, ‘phone‘: ‘18317155663‘, ‘gold‘: 100, ‘cars‘: [{‘car1‘: ‘bmw‘}, {‘car2‘: ‘ben-z‘}]}]] 

[{‘id‘: 314, ‘name‘: ‘矿泉水‘, ‘sex‘: ‘男‘, ‘age‘: 18, ‘addr‘: ‘北京市昌平区‘, ‘grade‘: ‘摩羯座‘, ‘phone‘: ‘18317155663‘, ‘gold‘: 100, ‘cars‘: [{‘car1‘: ‘bmw‘}, {‘car2‘: ‘ben-z‘}]}] 

[314]

os/json/jsonpath三个模块

上一篇:获取url参数值(可解码中文值)


下一篇:关于 js 中 this 指向的问题