python list转josn,以及读写txt、json文件

 

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

from csv import list_dialects
import json,random

# list 转成Json格式数据
# def listToJson(lst):
#     import json
#     import numpy as np
#     keys = [str(x) for x in np.arange(len(lst))]
#     list_json = dict(zip(keys, lst))
#     str_json = json.dumps(list_json, indent=2, ensure_ascii=False)  # json转为string
#     return list_json


def listToJson(lst):
    import json
    import numpy as np
    keys = [str(x) for x in np.arange(len(lst))]
    list_json = dict(zip(keys, lst))
    str_json = json.dumps(list_json, indent=2, ensure_ascii=False)  # json转为string
    return list_json

import numpy as np

a = np.arange(len("123456"))
a = listToJson(['s','d','f'])


josn1 = '''
[
	{
		"fields": {
			"category_name": "",
			"image_url": [
				"",
				""
			],
			"description": "",
			"brand_name": "",
			"thumbnail_url": [
				"",
				""
			],
			"title": "",
			"is_onsale": 72,
			"url": "",
			"brand_id": "",
			"series_id": "",
			"sold_num": 97,
			"category_id": 90,
			"onsale_time": 60,
			"price": 2040469.9542079207,
			"series_name": "",
			"is_promotion": 11,
			"id": "0",
			"seller_id": "",
			"status": ""
		},
		"cmd": "ADD"
	}
]
'''



f2=open(r"D:\test\0331\0331e.txt",'r',encoding= 'UTF-8')
list_a = []
list_all = []
for i in f2.readlines():
    ##########这句话必须写在循环里面,不然会导致最后的list的每条数据都是最后一个
    myfriend = json.loads(josn1)  # json转化字典对象
    ###########    
    print(i)     #其实是一个一个字符进行遍历的,每行结尾有一个换行符,所以进行了换行
    print(i.split('\t')) #数据中有\t分隔符(就是空格),可以通过这个来分割数据
    i_split = i.split('\t')
    # list_a.append(i.split('\t'))
    myfriend[0]["fields"]["id"] = i_split[0]
    myfriend[0]["fields"]["title"] = i_split[1]
    myfriend[0]["fields"]["is_onsale"] = random.randint(0,1)
    myfriend[0]["fields"]["sold_num"] = random.randint(0,999)
    myfriend[0]["fields"]["onsale_time"] = random.randint(1641015051,1648704651)
    myfriend[0]["fields"]["price"] = round(random.uniform(0, 999),2)
    myfriend[0]["fields"]["status"] = str(random.randint(0,1))
    list_a.append(myfriend[0])
    print(i.split('\t'))
print(type(f2.read()))
print(f2.read())
print(list_a)

print(f2.read())

# ensure_ascii=False,用于确保写入json的中文不发生乱码
with open(r"D:\test\0331\03312.json","w",encoding= "UTF-8") as f:
    # ensure_ascii=False,用于确保写入json的中文不发生乱码
    json.dump(list_a,f,ensure_ascii=False)
    print("加载入文件完成...")



# a = 1
# print(int(1/2))

print(a)
print(a)

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值