
上QQ阅读APP看书,第一时间看更新
2.3.1 键值对
派森号的船员们也参加了5个项目:10000公里竞速、20000公里避障飞行、精准抛射、着陆技巧、星矿探索。为了查看方便,洛克威尔把每一位船员参赛的项目和比赛顺序都写在一张二维表中,其中参加的项目用1标出,不参加的项目用0标出,如表2-1所示。
然后他建立了一个Python文件来表示各位队员的参赛项目,文件保存为sports_game.py。
格兰特蕾妮参加了4个项目,可以表示为一个列表:
['10000公里竞速',0, '精准抛射', '着陆技巧', '星矿探索']
把她的姓名和她参加的项目对应起来,就像这样:
'格兰特蕾妮': ['10000公里竞速',0, '精准抛射', '着陆技巧', '星矿探索']
你看到中间那个醒目的冒号(:)了吗?冒号前面的部分称为key(键),冒号后面的部分称为value(值),整个这个结构称为“键值对”。
其余队员所参加的项目都可以这样表示:
'大熊': [0,'20000公里避障飞行','精准抛射',0, '星矿探索'], '西西船长': ['10000公里竞速',0,'精准抛射', '着陆技巧', '星矿探索'], '克里克里': [0,'20000公里避障飞行','精准抛射', '着陆技巧', '星矿探索'], '菲菲兔': ['10000公里竞速',0,'精准抛射', '着陆技巧', '星矿探索'], '洛克威尔': ['10000公里竞速','20000公里避障飞行',0,'着陆技巧',0]
其实洛克威尔的秘密是使用了Python中一种可以用于快速查找的数据类型来表示运动员的参赛项目,这种类型就是Python的第5大标准类型,叫作字典。字典的元素就是键值对。