3.3_字典_Dictionary

来源:互联网 发布:极乐净土网页js代码 编辑:程序博客网 时间:2024/06/06 04:24

键(key),对应值(value)

 

结构介绍

 

 

 

字典(dictionary)是除列表以外python之中最灵活的内置数据结构类型。列表是有序的对象结合,字典是无序的对象集合。

两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。

字典用"{ }"标识。字典由索引(key)和它对应的值value组成。

实例(Python 2.0+)

#!/usr/bin/python# -*- coding: UTF-8 -*-dict = {}dict['one'] ="This is one"dict[2] ="This is two"tinydict = {'name':'john','code':6734,'dept':'sales'}printdict['one']# 输出键为'one' 的值printdict[2]# 输出键为 2 的值printtinydict# 输出完整的字典printtinydict.keys()# 输出所有键printtinydict.values()# 输出所有值

输出结果为:

Thisis oneThisis two {'dept': 'sales', 'code':6734,'name': 'john'}['dept', 'code', 'name']['sales',6734,'john']

 

 

# -*- coding: utf-8 -*-

 

#创建一个词典

phone_book = {'Tom': 123, "Jerry": 456, 'Kim': 789}

 

mixed_dict = {"Tom": 'boy', 11: 23.5}

 

#访问词典里的值

print("Tom's number is " + str(phone_book['Tom']))

 

print('Tom is a ' + mixed_dict['Tom'])

 

#修改词典

phone_book['Tom'] = 999

#增

phone_book['Heath'] = 888

 

print("phone_book: " + str(phone_book)) 

 

phone_book.update({'Ling':159, 'Lili':247})

 

print("updated phone_book: " + str(phone_book)) 

#删除词典元素以及词典本身

del phone_book['Tom']

 

print("phone_book after deleting Tom: " + str(phone_book)) 

#清空词典

phone_book.clear()

 

print("after clear: " + str(phone_book))

 

#删除词典

del phone_book

 

# print("after del: " + str(phone_book))

 

#不允许同一个键出现两次

rep_test = {'Name': 'aa', 'age':5, 'Name': 'bb'}

print("rep_test: " + str(rep_test))

 

 

#键必须不可变,所以可以用书,字符串或者元组充当,列表不行

 

list_dict = {['Name']: 'John', 'Age':13}

list_dict = {('Name'): 'John', 'Age':13}

 

 

# 六、字典内置函数&方法

# Python字典包含了以下内置函数:

# 1、cmp(dict1, dict2):比较两个字典元素。

# 2、len(dict):计算字典元素个数,即键的总数。

# 3、str(dict):输出字典可打印的字符串表示。

# 4、type(variable):返回输入的变量类型,如果变量是字典就返回字典类型。

# Python字典包含了以下内置方法:

# 1、radiansdict.clear():删除字典内所有元素

# 2、radiansdict.copy():返回一个字典的浅复制

# 3、radiansdict.fromkeys():创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值

# 4、radiansdict.get(key, default=None):返回指定键的值,如果值不在字典中返回default值

# 5、radiansdict.has_key(key):如果键在字典dict里返回true,否则返回false

# 6、radiansdict.items():以列表返回可遍历的(键, 值) 元组数组

# 7、radiansdict.keys():以列表返回一个字典所有的键

# 8、radiansdict.setdefault(key, default=None):和get()类似, 但如果键不已经存在于字典中,将会添加键并将值设为default

# 9、radiansdict.update(dict2):把字典dict2的键/值对更新到dict里

# 10、radiansdict.values():以列表返回字典中的所有值