2016-07-02 26 views
0

我正在嘗試使用python自動登錄。登錄信息存儲在json文件中,以便在不觸及python文件的情況下更輕鬆地管理這些值。在Python中迭代json登錄

我的JSON文件看起來像這樣

{ 
"carl": 
    {"name": "carlcarlson", "pw": "lenny"}, 
"lenny": 
    {"name": "lennylennards", "pw":"crrrl"} 
}  

我的Python腳本導入JSON文件爲這樣:

import json 
import pprint 

with open('logins.json') as logins_json: 
looog = json.load(logins_json) 

命令pprint(looog)結果

{u'carl': {u'name': u'carlcarlson', u'pw': u'lenny'}, 
u'lenny': {u'name': u'lennylennards', u'pw': u'crrrl'} 
然而

,我似乎無法弄清楚如何迭代這個文件;我如何打印(或者說,設置爲變量)每個人的名字和密碼?

我意識到在我的json文件中用「1」和「2」代替「carl」和「lenny」是一個選項;爲了更容易編輯json文件,我寧願將「可讀」名稱作爲標識符。

非常感謝您的支持。

+0

這是一本字典。你知道如何使用字典嗎? –

+0

請注意,Lenny的姓氏是Leonard,而不是Lennards :) –

回答

0

無論是字符串還是數字都沒有任何區別。這是一個字典,它又包含其他的字典。可以直接用looog.values()獲得外部字典的值。

0

您只需要處理dict

looog = {u'carl': {u'name': u'carlcarlson', u'pw': u'lenny'}, u'lenny': {u'name': u'lennylennards', u'pw': u'crrrl'}} 

for user,details in looog.items(): 
    print(user) 
    print(details['name']) 
    print(details['pw'])