Ich habe einen dict wie folgt:konnte nicht Schleife durch eine Liste von dict in Python
{ u'has_more': False,
u'is_limited': True,
u'latest': u'1501149118.071555',
u'messages': [ { u'text': u'--Sharp 1.9 DM\n--Modifying and testing DM script for bypassing existing sonumber validation and add line items',
u'ts': u'1501149054.047400',
u'type': u'message',
u'user': u'U0HN06ZB9'},
{ u'text': u'-- support to engineering on Licensing infra upgrade to 3.6\n - created a new key for qa on current 3.5 ubuntu 12 instance\n - added that key to the instance , created the ami and shared it with QA\n - short discussion with Navin on same',
u'ts': u'1501148934.002719',
u'type': u'message',
u'user': u'U02RRQJG1'},
{ u'inviter': u'U03FE3Z7D',
u'subtype': u'channel_join',
u'text': u'<@U0HN06ZB9|shikhar.rastogi> has joined the channel',
u'ts': u'1501148921.998107',
u'type': u'message',
u'user': u'U0HN06ZB9'},
{ u'inviter': u'U03FE3Z7D',
u'subtype': u'channel_join',
u'text': u'<@U02RRQJG1|himani> has joined the channel',
u'ts': u'1501148328.777625',
u'type': u'message',
u'user': u'U02RRQJG1'},
{ u'text': u'something like ^^^^',
u'ts': u'1501148318.773838',
u'type': u'message',
u'user': u'U03FE3Z7D'},
{ u'text': u'-- This is test \n-- Not\n-- test1\n-- Test b',
u'ts': u'1501148309.770614',
u'type': u'message',
u'user': u'U03FE3Z7D'},
{ u'text': u'<!channel> can all of you start putting some random crap in same format as shift handoff',
u'ts': u'1501148287.762336',
u'type': u'message',
u'user': u'U03FE3Z7D'},
{ u'text': u'<!channel> can all of you start putting some random crap in same format as shift handoff',
u'ts': u'1501148287.762161',
u'type': u'message',
u'user': u'U03FE3Z7D'},
{ u'text': u'sjvnsv',
u'ts': u'1501138569.469475',
u'type': u'message',
u'user': u'U03FE3Z7D'},
{ u'text': u'-- Test1 \n-- Leave this ASAP',
u'ts': u'1501136157.933720',
u'type': u'message',
u'user': u'U03FE3Z7D'},
{ u'bot_id': u'B19LZG1A5',
u'subtype': u'bot_message',
u'text': u'This is crazy',
u'ts': u'1501075281.418010',
u'type': u'message',
u'username': u'TEST_BOT'}],
u'ok': True,
u'oldest': u'1500820472.964970'}
Jetzt versuche ich, zwei Dinge zu extrahieren 1. ist die user
und seine text
entspricht, aber irgendwie bin ich nicht in der Lage im Anschluss an diese Verwendung zu erhalten:
json_objects = json.loads(r.text)
for i in json_objects:
print json_objects['messages'][i]['user']
print json_objects['messages'][i]['text']
Die oben wirft einen Fehler:
Traceback (most recent call last):
File "clean_test.py", line 45, in <module>
get_channel_messages()
File "clean_test.py", line 38, in get_channel_messages
print json_objects['messages'][i]['user']
TypeError: list indices must be integers, not unicode
oben Das sollte den user
tatsächlich bekommen und ruft eine user_detail() meathod den Namen zu erhalten und kommen zurück, sobald dies geschehen ist, möchte ich den Inhalt in eine Datei in der folgenden Weise abgeladen werden Sie
username1:
-- text
username2:
-- text2
Ich denke, dass Sie über die falsche iterierbare iterieren. versuche 'für i in json_objects ['messages']:' – nutmeg64