39.表格数据使用字典和列表存储
并实现访问(重要)
互联网上所有的数据本质上都是表格
r1 = {"name":"onepis","age":18,"salary":30000,"city":"北京"}
r2 = {"name":"twopis","age":19,"salary":20000,"city":"上海"}
r3 = {"name":"threepis","age":20,"salary":10000,"city":"深圳"}
tb = [r1,r2,r3]
#获得第二行的人的薪资
print(tb[1].get("salary"))
#打印表中所有的的薪资
for i in range(len(tb)): # i -->0,1,2
print(tb[i].get("salary"))
#打印表的所有数据
for i in range(len(tb)):
print(tb[i].get("name"),tb[i].get("age"),tb[i].get("salary"),tb[i].get("city"))
对于多层字典可以,可以如此取值
pageCount = infos['data']['list']['summary']['pageCount']
# 和 get 相比 各有优点。 但是 get 可是 指定 一个默认值。
# 这个方式 如果说 多层嵌套。 要写很多次 get 。
# 直接 以 中括号比较方便。 但是 如果 没有这个 键 就会报错。
print(pageCount)
In [94]: a={"a":1,"b":{"c":3}}
In [95]: a
Out[95]: {'a': 1, 'b': {'c': 3}}
In [96]: a["a"]
Out[96]: 1
In [97]: a.get("a")
Out[97]: 1
In [98]: a.get("c") # 没有报错 返回的是 None
In [99]: a["c"]
----------------------------------------------------------------------
KeyError Traceback (most recent call last)
<ipython-input-99-bbd23200e0a4> in <module>
----> 1 a["c"]
KeyError: 'c'
In [100]: a.get("c","没有这个键")
Out[100]: '没有这个键'
In [101]: a["b"]
Out[101]: {'c': 3}
In [102]: a["b"]["c"]
Out[102]: 3
In [103]: a.get("b")["c"]
Out[103]: 3
In [104]: a.get("b").get("c")
Out[104]: 3