Python学习(字典和结构化数据)

来源:互联网 发布:centos升级后不能启动 编辑:程序博客网 时间:2024/06/06 13:09

1.字典dictionary:键值对形式的储存方式集合在Python中被称为字典,类似于java中的各种Map。字典中表项的排列顺序不是固定的,不能向列表那样进行切片。在字典里整数也可以作为键。

>>> person = {'name':'Lee','age':25,'sex':'man',2017:2017}
>>> person['age']
25

>>> person[2017]
2017

2.keys()、values()和items()方法:返回的值不是真正的列表,不能被更改,比如items取出来的会是一个元组,可用于for循环来查找字典中的相应的值。

>>> person = {'name':'Lee','age':'25','sex':'man'}
>>> for k in person.keys():
    print(k)
sex
name
age
>>> for v in person.values():
    print(v)
man
Lee
25
>>> for i in person.items():
    print(i)
('sex', 'man')
('name', 'Lee')
('age', '25')

3.检查时候在字典中:

>>> person = {'name':'Lee','age':'25','sex':'man'}
>>> 'name' in person.keys()
True
>>> 'Lee' not in person.values()
False

4.get()方法有两个参数,一个是要取得其值的键,另一个是该键不存在时,返回的备用值,避免报错。

>>> person = {'name':'Lee','age':'25','sex':'man'}
>>> person.get('names','字典中没有该字段')
'字典中没有该字段'

5.setdefault()方法:有两个参数,第一个参数是要检查的键,第二个参数是当该键不存在时要设置的键对应的值。如果查找的键存在,则返回键的值,第二个参数无效;如果键不存在,则创建键和对应的值。

>>> person = {'name':'Lee','age':'25'}
>>> person.setdefault('sex','man')
'man'
>>> person
{'sex': 'man', 'name': 'Lee', 'age': '25'}

setdefault()方法的小用:找出格言中重复的字符数量。

say = 'Nothing is impossible if you put your heart into it.'
count = {}
for char in say:
    count.setdefault(char,0)
    count[char] = count[char] + 1
print(count)

6.嵌套的字典和列表:示例展示。


Apples 7
Cups 3
Cakes 0
Ham Sandwiches 3
Apple Pies 1

这算是用一种建模的方式实现对字典中相应内容的统计。

原创粉丝点击