本文目录一览:
- 1、python同时读写多个文件暨大型json文件读取方法
- 2、python request/读写/上传文件
- 3、python中json处理
- 4、如何用python读取json里面的值啊
- 5、Python怎么读写json格式文件
python同时读写多个文件暨大型json文件读取方法
最近处理NLP数据集时,需要一边读json文件,一边向自己创建的txt写入提取出的对话数据集,即同时读写多个文件,本来记得以前在哪看过这波操作的,但时间有点久了,忘了。
又由于新换了mac,win上原有的梯子挂了,这就很离谱,因此也没法谷歌,只能用百度凑合着查了一番,看看有没有大佬记录了这个小tip。但是很遗憾,网上找到的方法都很捞,简直是海底捞,没办法。好在脑子里还有点印象,修修改改总算写出来了,在此做个记录,同时也开源方便一下诸位道友。
你是不是觉得我很捞,很菜,连个文件读写都不会~
那么,对不起,诸位,现在,我要起飞了,你以为你是第二层,我是第一层,实际上,我在第五层,且看我写给你看~
最后,如果有道友对俺的开放域对话数据集感兴趣,这个其实也是开源的
数据集链接
python request/读写/上传文件
python 读写文件:
data_json = json.dumps(result_r) #json字符串
f =open('E://XXX.txt',"a+") #打开文件,追加+读写
f.write(data_json) # data_json 写入XXX.txt'文件
f.seek(0) # 光标移动到文件开头
lines = f.read()() # 逐行读入
f.close() #关闭文件
mode 打开的方式(r,w,a,x,b,t,r+,w+,a+,U)
r 以只读方式打开文件。文件的指针会放在文件的开头。
w 以写入方式打开文件。文件存在覆盖文件,文件不存在创建一个新文件。
a 以追加方式打开文件。如果文件已存在,文件指针放在文件末尾。如果文件不存在,创建新文件并可写入。
r+ 打开一个文件用于读写,文件指针会放在文件的开头
w+ 打开一个文件用于读写,文件存在覆盖文件,文件不存在创建一个新文件。
a+ 打开一个文件用于读写,如果文件已存在,文件指针放在文件末尾。如果文件不存在,创建新文件并可写入。
记忆方法:记住r读,w写,a追加,每个模式后加入+号就变成可读写。
f =open('E://xxx.txt',"a+") / f=open(r'E://xxx.txt',mode='a+',encoding='UTF-8')
踩坑1
没有加encoding='UTF-8',可能会报如下错:
import requests # 使用 request函数需导入 request 库
import json #使用 JSON 函数需要导入 json 库: import json 。
param ={} #请求body
url ='http://域名/api'
header = {'content-type':'application/json'}
r = requests.post(url,json=param,headers=header) #发送post请求
result_r = r.json() #请求返回的json传入对象result_r
data_json = json.dumps(result_r) #将 Python-result_r对象转为字符串 json.dumps()
文件上传请求(csv文件)
file_path = "xxx.csv" 文件路径
uploaddata = {"file":open(file_path, "rb")}
file_upload_result = requests.post(api_URL, files=uploaddata, cookies=cookie)
python中json处理
python中json文件处理涉及的四个函数json.loads()、json.dumps()、json.load()、json.dump()。
1)json.dumps()
将一个Python数据类型dict进行json格式的编码(字典-字符串)
eg:
age_dict = {'age1':'12', 'age2':'15'}
json_info = json.dumps(age_dict)
print("json_info = {}".format(json_info))
print("json_info type = {}".format(type(json_info)))
2)json.loads()
将json格式数据转换为dict(字符串-字典)
json_age ='{"age1": "12", "age2": "15"}'
dict_age = json.loads(json_info)
print("json_age = {}".format(json_age))
print("dict_age type = {}".format(str(type(dict_age))))
3)json.load()
读取文件,将里json格式字符串转化为dict
with open(test.json, 'r') as file:
contents = json.load(file)
print(contents)
4)json.dump()
将dict类型转换为json格式字符串,存入文件
number = [1, 2, 3, 5]
file = 'number.json'
with open(file , 'w') as file:
json.dump(number, file)
如何用python读取json里面的值啊
1、首先需要在桌面新建‘json.txt’文件,内容为jsonline格式。
2、打开Python开发工具IDLE,新建‘json.py’文件,并按照如图所示书写代码。
3、F5运行程序,Shell打印出json文本信息。
4、这是一次性读取所有内容,如果文件很大的情况,出于性能考虑要分批读取内容,这样要用到yield生成器,改写lines()函数如下,注意yield一定要写在with里,这样才能每次从上一次读取的位置继续读取。
5、继续写程序入口函数,这里要注意readlines返回的是一个列表,要读取里面的内容,要再做一个循环来遍历。
6、F5运行程序,Shell打印出json文本信息,这个利用生成器方式读取的方式经常处理较大的文件。
Python怎么读写json格式文件
以下示例展示基于Python3.x的json文件的读写:
def json_basic():
"""json基本操作"""
import json
data = {
"ID": 1,
"课程": "Python",
"机构": "优品课堂",
"单价": 200.00
}
json_str = json.dumps(data)
print(json_str)
json_data = json.loads(json_str)
print(json_data)
def json_write_file():
"""json操作文件"""
import json
data = {
"ID": 1,
"课程": "Python",
"机构": "优品课堂",
"单价": 200.00
}
with open('data.json', 'w', encoding='utf8') as f:
json.dump(data, f)
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, website.service08@gmail.com 举报,一经查实,本站将立刻删除。