Python JSON 谷歌翻译提取问题
我正在尝试使用 Simplejson 在 python 中提取 JSON 对象。但我收到以下错误。
Traceback (most recent call last):
File "Translator.py", line 42, in <module>
main()
File "Translator.py", line 38, in main
parse_json(trans_text)
File "Translator.py", line 27, in parse_json
result = json['translations']['translatedText']
TypeError: list indices must be integers, not str
这是我的 JSON
对象的样子,
{'translations': [{'translatedText': 'fleur'}, {'translatedText': 'voiture'}]}
这是我的 python 代码。
def parse_json(trans_text):
json = simplejson.loads(str(trans_text).replace("'", '"'))
result = json['translations']['translatedText']
print result
有什么想法吗?
I am trying to extract the JSON object in python using Simplejson. But I am getting the following error.
Traceback (most recent call last):
File "Translator.py", line 42, in <module>
main()
File "Translator.py", line 38, in main
parse_json(trans_text)
File "Translator.py", line 27, in parse_json
result = json['translations']['translatedText']
TypeError: list indices must be integers, not str
This is my JSON
object looks like,
{'translations': [{'translatedText': 'fleur'}, {'translatedText': 'voiture'}]}
and this is my python piece of code for it.
def parse_json(trans_text):
json = simplejson.loads(str(trans_text).replace("'", '"'))
result = json['translations']['translatedText']
print result
any idea on it?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
json['translations']
是您定义的列表,因此它的索引必须是整数才能获取翻译列表:
另一种方式:
json['translations']
is a list by your definition, so its indices must be integersto get a list of translations:
another way:
json['translations']
是对象列表。要提取'translatedText'
属性,您可以使用itemgetter
:请参阅
detect_language_v2()
另一个使用示例。json['translations']
is a list of objects. To extract the'translatedText'
property, you could useitemgetter
:See the implementation of
detect_language_v2()
for another usage example.