zoukankan      html  css  js  c++  java
  • 07 json与os模块(进阶)

    json和os模块

    阶段一 、数据交换

    1、json的基本介绍

    JSON全名是JavaScript Object Notation(即:JavaScript对象标记)它是JavaScript的子集。

    前端和后端进行数据交互,其实就是JS和Python进行数据交互

    2、json模块 API

    接口一:json.dumps(obj) # 将obj这个对象,变成JSON字符串

    接口二:json.loads(s) # 将s这个JSON字符串,转换成Python的数据类型

    接口三:json.dump

    接口四:json.load

    3、json注意事项

    1.名称必须用双引号(即:””)来包括

    2.值可以是双引号包括的字符串、数字、true、false、null、JavaScript数组,或子对象。

    PythonJSON
    字典 对象
    列表或元组 数组
    字符串 字符串
    int或float 数字
    True或False true或false
    None null
    4、实例
    import json
    ​
    # 接口,用于数据转化,解码编码
    # print(json.__all__)     # 查看json里面所有方法
    ​
    data = {
        'name': 'shiwei',
        'age': 18,
        'list': [1,2,3],
        'tuple': (4,5,6),
        'bool': True,
        'kong': None
    }
    # print(data)     # 打印原本的python数据
    # json_data = json.dumps(data)    # python对象转换成json对象,序列化过程
    # print(json_data)
    # print(type(json_data))
    # json转换成python
    # json_dict = json.loads(json_data)
    # print(json_dict)
    # print(type(json_dict))
    # dump load 针对文件使用
    # 序列化,python转换成json
    with open('test.json','w+') as f:
        json.dump(data,f)
    ​
    # 反序列化过程,json转换成python
    with open('test.json','r') as f:
        json_dict = json.load(f)
        print(json_dict)

    阶段二、文件与路径操作

    1、os模块的目录及文件操作
    显示当前路径:os.getcwd()
    展示当前目录内容:os.listdir(path)
    改变当前路径:os.chdir(path)
    创建目录:os.mkdir
    删除目录:os.rmdir
    创建文件: f = open('a.aaa','w+')
    删除文件:os.remove
    重命名文件、文件夹:os.rename
    重命名文件、文件夹、目录:os.renames

    实例:

    import os
    ​
    # print(os.name)  # 如果用windows,会打印nt,如果是linux,打印posix
    ​
    path = os.getcwd()  # 显示当先路径,相当于pwd
    # print(path)
    # print(os.listdir('/home/pyvip'))     # 显示当前目录下的所有内容,可以加绝对路径
    # os.chdir('/home/pyvip')       # 改变路径
    # print(os.getcwd())
    # os.mkdir('aaa')   # 创建文件夹
    # os.rmdir('aaa')   # 删除文件夹
    # f = open('a.aaa','w+')      #创建文件
    # f.close()
    # os.remove('a.aaa')      # 删除文件,可以加绝对路径
    # os.rename('test.json', '666.json')      # 对文件重命名
    # os.rename('aaa','bbb')      # 对文件重命名
    # os.rmdir('bbb')
    # 不仅可以修改文件、文件夹,同时也可以修改目录
    # os.renames('/home/pyvip/a/b/a.aaa','/home/pyvip/a/c/b.bbb')
    2、os.path 模块的路径操作
    路径拼接:os.path.join
    所在目录 /父级目录:os.path.dirname
    基本短路径:os.path.basename
    绝对路径:os.path.abspath
    规范化路径: os.path.normpath
    资源大小: os.path.getsize
    资源时间:os.path.getctime/
    getatime/
    getmtime
    路径是否存在:os.path.exists
    是否是存在的目录:os.path.isdir
    是否是存在的文件:os.path.isfile
    是否是绝对路径:os.path.isabs

    实例:

    import os
    ​
    # print(os.name)  # 如果用windows,会打印nt,如果是linux,打印posix
    ​
    path = os.getcwd()  # 显示当先路径,相当于pwd
    # print(path)
    # print(os.path.join(path,'image','aaa.png'))
    # print(os.path.dirname(path))    # 查看父级目录
    # print(os.path.basename(path))       # 基本短路径
    # print(os.path.abspath(path))        # 绝对路径
    # path2 = os.path.join(path,'..','image','666.json')
    # print(path2)
    # print(os.path.normpath(path2))      # 规范化路径
    # print(os.path.getsize(path))        # 显示资源大小
    # print(os.path.getctime(path))       # 资源时间,显示时间戳
    # print(os.path.getatime(path))
    # print(os.path.getmtime(path))
    # print(os.path.exists(path))     # 路径是否存在
    # print(os.path.isdir('aaa'))        # 目录是否存在
    # print(os.path.isfile('666.json'))       # 文件是否存在
    # print(os.path.isabs('..'))          # 是否是绝对路径
  • 相关阅读:
    基于微信的域名交易系统(进度汇报之后台)
    基于微信的域名交易系统(数据库表-修订版)
    基于微信的域名交易系统(需求文档)
    基于微信的域名交易系统(功能细节敲定)
    基于微信的域名交易系统(数据库结构设计)
    文档
    你离毕业有多远 原型设计pro
    Current Position of GradPaul 毕业宝四月中旬进度
    Architecture of GradPaul 毕业宝架构设计
    翘课老黄历——设计文档
  • 原文地址:https://www.cnblogs.com/zcmq/p/9275807.html
Copyright © 2011-2022 走看看