如何格式化我的JSON输出,使其看起来易于阅读,并且我有一个如下所示的JSON文件:
{
"user1":{
"Country":[
"China", "USA", "Nepal"
],
"Name": [
"Lisbon"
]
},
"user2":{
"Country":[
"Sweden", "China", "USA"
],
"Name": [
"Jade"
]
},
"user3":{
"Country":[
"India", "China", "USA"
],
"Name": [
"John"
]
}
这是我的代码:
user = raw_input("Enter user's name: ")
with open('Users.json') as f:
data = json.load(f)
for k, v in data.items():
if any(x in data[user]['Country'] for x in v['Country']):
print(v['Name'])
到目前为止,我的输出看起来像这样:
[u'Lisbon']
[u'Jade']
[u'John']
我想要一个看起来像这样的输出,如何解决呢?:
Lisbon
Jade
John
答案 0 :(得分:1)
您只需将print(v['Name'])
的{{1}}更改为
答案 1 :(得分:0)
u
中的u'Jade'
表示字符串为encoded in Unicode。如果您希望打印裸露的字符串,可以使用print(unicode(v['Name'][0]))
,但这对基础数据类型没有影响。
如果您将继续使用Python处理JSON对象,则可能要签出pretty-printing JSON。
答案 2 :(得分:0)
谢谢大家的各种回答!但是我设法自己找到了答案,我将打印语句调整为这个!
userName = raw_input("Enter user's name: ")
with open('extracted_data.json') as f:
data = json.load(f)
for k, v in data.items():
if any(x in data[userName]['Acceptable_country'] for x in v['Acceptable_country']):
print(", ".join(v['Name']))