010_Dictionary(字典)

2017-10-14  本文已影响0人  Nzkalhbxx
# __author__:Nzkalhbxx
# __date__:2017/10/14

'''Dictionary字典
字典是Python中唯一的映射关系, 采用键值对(key-value)的形式存储数据
存储数据时Python会对key作哈希函数运算, 根据计算的结果决定value的存储地址, 所以字典是无需存储的, 且key必须是可哈希的, 可哈希表示key必须是不可变类型, 如数字, 字符串, 元组
字典是除列表以外Python中最灵活的内置数据结构类型, 列表是对象的有序结合, 而字典是无需的对象集合, 两者的区别在于:
字典当中的元素是通过键来获取的, 而不是通过偏移来获取的
'''
# 创建字典错误方式1: 不能使用可变数据类型来作为字典的key
# dic1 = {'name': 'psj', [1, 3, 7]: 'test'}
# 程序运行到此处时才赋予names类型, 而此时的类型时list
names = ['name', 'age', 'favorite']
print(names[0])
print("type of names[0]:", type(names[0]))
print("type of names:", type(names))
# 创建字典方式1:
print("\n-------------创建字典方式1-------------".center(33, '-'))
# 由此可见, 列表的元素类型与列表无关, 虽然列表无法充当key值, 但并不影响列表中的元素作为字典的key
dict1 = {names[0]: 'psj', 'age': 19, 'hobby': 'Passion Fruit Juice', (3, 7): 'test', 'is_chinese': True, 11: 'abc'}
print(dict1)
print(dict1['name'])
names = 21
# Python中变量的数据类型是随着赋值的变化而变化的, 并不具有唯一的数据类型
print("type of names:", type(names))

# 创建字典方式2:
print("\n--------------创建字典方式2-------------".center(33, '-'))
dict2 = dict((('name', 'wdq'),))
print(dict2)
dict2 = dict([('name', 'zjy'), ('age', 6)])
print(dict2)
dict2 = dict([['name', 'zyj'], ['hobby', 'play']])
print(dict2)
运行结果
上一篇下一篇

猜你喜欢

热点阅读