字典属于容器对象,字典中的每个元素都是“键:值”,且要满足:
1、键与值用 冒号 分隔,而元素之间用逗号分隔,所有这些在大括号内。
2、键必须是唯一的,同一个键不允许重复出现,若出现两次后一次将覆盖前一次。
3、键必须不可变,只能用数字、字符串或元组充当,不可以用列表充当。
(其键的定义与数据库中主键的定义大相径庭)
4.3.1 字典的创建于删除
代码如下:

4.3.2 访问字典元素
1)使用键作为下标访问对应的值
2)使用keys()键返回所有键的列表
3)values返回一个包含所有值的列表
4)get法、items法

接下来的代码首先生成包含1000个随机字符的字符串,统计每个字符出现的次数
import string
import random
x = string.ascii_letters + string.digits + string.punctuation #形成字符集包含字母、数字、标点符号
y = [random.choice(x)for i in range(1000)]
z = ''.join(y) #将列表y中的每个元素拼接为字符串
d = dict() #使用字典保存每个字符出现的次数
for ch in z:
d[ch] = d.get(ch, 0) + 1 #统计出现次数
print(d)
{'1': 13, '9': 10, 'E': 9, 'k': 11, '_': 15, ',': 16, 'n': 10, '>': 12, 'B': 11, 'S': 9, 'J': 8, '!': 14, 'z': 12, 'l': 12, 'Z': 11, '-': 11, 'N': 18, '#': 16, '3': 9, 's': 13, '(': 10, 'h': 12, '&': 9, ':': 13, 'F': 13, 'T': 11, 'w': 8, 'R': 15, 'C': 9, 'H': 11, 'f': 6, "'": 12, 'i': 11, '[': 12, 'M': 13, '5': 10, '$': 13, '<': 12, 'W': 11, 'V': 8, '4': 13, 'x': 6, 'A': 7, '\\': 15, ')': 7, '?': 11, 'e': 11, '+': 14, 'j': 16, '8': 16, 'g': 7, 'c': 7, 'u': 22, 'm': 11, '/': 7, 'v': 10, 'O': 11, ']': 13, 'L': 8, 'b': 9, 'G': 4, '`': 12, ';': 14, 'r': 7, 'Q': 13, 'd': 13, '6': 11, '=': 10, 't': 8, 'Y': 13, '%': 15, 'a': 11, '}': 12, 'p': 6, 'I': 10, 'q': 11, '^': 8, '7': 12, '*': 6, 'K': 11, '0': 13, '2': 8, 'y': 8, 'U': 7, 'X': 8, '.': 10, '@': 12, '|': 9, '{': 5, '"': 6, '~': 8, 'o': 6, 'P': 5, 'D': 8}
4.3.3 字典元素的添加、修改与删除

字典元素的其他操作

4.3.4字典应用案例
以下案件读入key:value模式,输出value:key模式,以下为参考代码:

while True:
s = input("shu ru zi dain lei xing de zi fu chuan:")
d = eval(s)
if isinstance(d,dict):
e = {}
for k in d:
e[d[k]] = k
print(e)
break
else:
print("shu ru cuo wu, qing chong xin shu ru.")
博客围绕字典展开,介绍了字典作为容器对象的元素规则,如键值用冒号分隔、键须唯一且不可变等。还详细阐述了字典的创建与删除、访问元素、元素的添加修改与删除等操作,并给出了字典应用案例的参考代码。
1735

被折叠的 条评论
为什么被折叠?



