当尝试使用python从json文件中打印值时,出现TypeError错误。
我正在尝试从下面的json文件中的爱好中检索一项
{"name": "Jason",
"hobbies": ["music", "programming", "games"],
"job": "Software Developer"}
使用以下代码
import json
with open('input.json', 'r') as input:
obj = json.load(input)
print('Hello, ' + obj['hobbies'])
我遇到以下错误,不确定如何从列表中检索
TypeError:只能将str(而不是“ list”)连接到str
任何帮助将不胜感激
答案 0 :(得分:2)
这将起作用:
import json
with open('input.json', 'r') as input:
obj = json.load(input)
#make it a string
print('Hello, ' + str(obj['hobbies']))
您需要做的是将其设置为字符串。 这就是str的作用
一项:
import json
with open('input.json', 'r') as input:
obj = json.load(input)
#make it a string the item is the first one
print('Hello, ' + str(obj['hobbies'][0]))
答案 1 :(得分:0)
根据评论,针对修改后的问题提供了答案。您应该更改它:
import json
with open('input.json', 'r') as input:
obj = json.load(input)
print('Hello,', obj['hobbies'][0])
使用逗号会自动将对象转换为字符串,或者如Matthijs990所说的那样,首先将对象转换为字符串,但这不是pythonyc
print('Hello, ' + str(obj['hobbies'][0]))