如何移除列表中JSON数据时间字段的'T'与'Z'字符?
移除JSON列表指定字段值中的'T'和'Z'
直接遍历列表里的每个元素,定位到updated_date和kyc_updated_date字段,用字符串替换就能去掉'T'和'Z',代码如下:
jsonlist = [ {'data': {'id': 13471293, 'updated_date': '2023-04-27T22:00:11Z'}}, {'data': {'id': 423712896, 'kyc_updated_date': '2023-04-27T18:23:11Z'}} ] # 逐个处理列表里的项 for item in jsonlist: data_dict = item['data'] # 处理updated_date,先判断字段存在避免报错 if 'updated_date' in data_dict: # 把'T'换成空格,'Z'直接删掉 data_dict['updated_date'] = data_dict['updated_date'].replace('T', ' ').replace('Z', '') # 处理kyc_updated_date if 'kyc_updated_date' in data_dict: data_dict['kyc_updated_date'] = data_dict['kyc_updated_date'].replace('T', ' ').replace('Z', '') print(jsonlist)
补充说明
- 先判断字段是否存在,防止某些元素没有目标字段时抛出
KeyError - 如果不想修改原始列表,可以用
copy.deepcopy()先复制一份再处理:
import copy # 复制原始数据,不改动原列表 new_list = copy.deepcopy(jsonlist) for item in new_list: data_dict = item['data'] if 'updated_date' in data_dict: data_dict['updated_date'] = data_dict['updated_date'].replace('T', ' ').replace('Z', '') if 'kyc_updated_date' in data_dict: data_dict['kyc_updated_date'] = data_dict['kyc_updated_date'].replace('T', ' ').replace('Z', '') print("原数据:", jsonlist) print("处理后的数据:", new_list)
内容的提问来源于stack exchange,提问作者Pregz
相关产品推荐
相关产品推荐

