Json库和文件操作

文章目录

JSON

python 复制代码
import json

#json常用的只有4个方法,不带s的是序列化到文件或者从文件反序列化,带s的都是内存操作不涉及持久化
json.load()   # 从文件中读取json字符串 -->python对象
json.loads()  # json字符串 ->python对象
json.dump()   # python对象转化为json字符串写入文件中
json.dumps() # python 对象 -> json字符串


with open('json_test.txt','w+') as f:
    json.dump(data,f)
 
with open('json_test.txt','r+') as f:
    print(json.load(f))


ps:元组和列表解析出来的均是数组

文件操作

with 表示会自动在读写文件后关闭流,常用模式r,w,a

r : 读取文件,若文件不存在则会报错

w: 写入文件,若文件不存在则会先创建再写入,会覆盖原文件

a : 写入文件,若文件不存在则会先创建再写入,但不会覆盖原文件,而是追加在文件末尾

rb,wb:分别于r,w类似,但是用于读写二进制文件

r+ : 可读、可写,文件不存在也会报错,写操作时会覆盖

w+ : 可读,可写,文件不存在先创建,会覆盖

a+ :可读、可写,文件不存在先创建,不会覆盖,追加在末尾

python 复制代码
# 1.写文件
with open("a.txt","w") as f:
    json.dumps(data,f)
# 2.读文件
with open("a.txt","r") as f:
    json.loads(data,f)
# 3.逐行写文件
with open("a.txt","w") as f:
    f.writeLines(data+"\n")
# 4.逐行读文件
with open("a.txt","r") as f:
    for line in f:
        dosomething
相关推荐
fliter6 小时前
Futures Nostalgia:从 hyper 老派写法看懂 async Rust、Tower 与 Backpressure
后端
苏三说技术7 小时前
推荐一个牛逼的RAG+KAG双引擎AI项目
后端
从此以后自律8 小时前
Spring 全家桶
java·后端·spring
utmhikari9 小时前
【日常随笔】深入回答纯Vibe Coding写后端项目的几个问题
后端·ai编程·vibecoding
尚早立志9 小时前
Spring Boot 源码研读之ConfigurableEnvironment 环境准备
java·spring boot·后端
bloxed9 小时前
大模型应用-筑基期【11:JSON结构化输出实战】
json·大模型应用
布朗克16810 小时前
Go 入门到精通-08-复合类型之数组与切片
开发语言·后端·golang·数组与切片
fliter10 小时前
从手写 HTTP/1.1 到拆开 HTTP/2
后端
CaffeinePro10 小时前
FastAPI自动接口文档定制与美化、权限管控
后端·fastapi