我经常在示例代码中看到这一点:
# Our mock database.
users = {'foo@bar.tld': {'password': 'secret'}}
想知道为什么不只是说
passwords = {"foo@bar.tld": "secret"}
这种嵌套结构的好处在哪里?
肯定有一个缺点:需要确保为我设置的每个用户命名密码“password”...
答案 0 :(得分:7)
因为通常需要在字典的每个级别中包含更多条目,例如
users = {'foo@bar.tld': {'password': 'secret',
'name': 'john smith',
'creation_date': '2017/09/06'},
'baz@qux.tld': {'password': 'secret',
'name': 'someone else',
'creation_date': '2017/08/02'}}
这类似于JSON的结构,您可以在其中使用任意嵌套的项来表示层次结构。
答案 1 :(得分:2)
想象一下,你有更多的用户,每个用户都有密码,用户名,年龄,出生日期,照片,身份等等,那么这将是非常低效的:
{
public static void main(String[] args) {
System.setProperty("webdriver.gecko.driver", "/Users/snigdhanarain/Documents/geck");
WebDriver driver = new FirefoxDriver();
driver.get("google.com");
}
}
然后你被迫使用:
users = {'foo@bar.tld': 'secret,userName,15,pic.png...etc'} # you also need other users with properties