无法获取JSON属性的JSON完整属性值

2024-09-27 21:29:24 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在从本地PC上的JSON文件中提取一些数据: 结构如下:

JSON数据样本

{ "totalRecords": 1, 
  "items": [{
            "name": "Services Ltd",
            "country": "GB",
            "city": "Evesham",
            "zip": "WR11 1BY",
            "address": "Northwick House\r\rCoopers Lane"
      }]
}

Python脚本

import json
from pprint import pprint
fileName = r'naturesmenu.json'
with open(fileName, 'r') as f:
    data = json.load(f)    
dataData = data["items"]
c = 1
for i in dataData:
    # pprint(i)
    name = i['name']
    address = i['address']
    print(address)

用于:

address = i['address']

输出应为:

Northwick House\r\rCoopers Lane

或者如果它删除/具有回车的效果,那么输出应该如下所示:

Northwick House

Coopers Lane

但我只得到这个输出:

Coopers Lane

不是address对应的完整值。 我做错了什么有人能指出吗?谢谢


Tags: 数据nameimportjsondataaddressitemsfilename
2条回答

你可以选择replace

dataData = data["items"]
c = 1
for i in dataData:
    # pprint(i)
    name = i['name']
    print(name)
    address = i['address'].replace('\r',' ')
    print(address)

# 'Northwick House Coopers Lane'

或者,\nreplace中,如果您想在新行中输出

address = i['address'].replace('\r','\n')

# Northwick House
# Coopers Lane

不换行的回车符转到行的开头,然后开始覆盖同一行,它不转到下一行。所以Coopers Lane显示在Northwick House上,您将看到的输出是

Coopers Laneuse

更改JSON文件,使其包含\n而不是\r,这是一个换行转义序列

相关问题 更多 >

    热门问题