python第六节:字典dict(1)

本文详细介绍了Python中字典的创建方法,包括直接赋值、通过dict关键字、列表和元组,以及利用fromkeys。此外,还展示了如何通过键取值、get方法处理不存在的键,以及使用keys(),values(),items()方法获取字典的键、值和键值对。
摘要由CSDN通过智能技术生成

字典就是由键值对组成。键可以是数字、字符串、列表、元组。键必须是唯一的,值是可以重复的。

创建字典

例子1:

#  1 创建空字典

dict1 = {}

#  2 直接赋值法创建字典

dict2 = {'b':1,'c':2,'d':3}

dict3 = {'a':[1,2,3],'b':[4,5,6],'c':[7,8,9],'d':[10,11,12]}

# 3 通过dict关键字创建字典

dict4 = dict(name='张三',age=18,sex='')

# 4 通过listdict创建字典,注意,list中是二元元组,否则报错

list1 = [('name','李四'),('age',20),('sex','')]

dict5 = dict(list1)

# 5 利用dictzip

dict6 = dict(zip('周吴郑王','abcd'))

# 6 用列表推导式

dict7 = {i:i**3 for i in range(0,3)}

# 7 fromkeys创建字典

dict8 = dict.fromkeys(['a','b','c','d'],1234)



print(type(dict1),dict1)

print(type(dict2),dict2)

print(type(dict3),dict3)

print(type(dict4),dict4)

print(type(dict5),dict5)

print(type(dict6),dict6)

print(type(dict7),dict7)

print(type(dict8),dict8)

结果:

<class 'dict'> {}

<class 'dict'> {'b': 1, 'c': 2, 'd': 3}

<class 'dict'> {'a': [1, 2, 3], 'b': [4, 5, 6], 'c': [7, 8, 9], 'd': [10, 11, 12]}

<class 'dict'> {'name': '张三', 'age': 18, 'sex': '女'}

<class 'dict'> {'name': '李四', 'age': 20, 'sex': '男'}

<class 'dict'> {'周': 'a', '吴': 'b', '郑': 'c', '王': 'd'}

<class 'dict'> {0: 0, 1: 1, 2: 8}

<class 'dict'> {'a': 1234, 'b': 1234, 'c': 1234, 'd': 1234}

字典取值:

例子:

直接赋值法创建字典

dict1 = {'a':[1,2,3],'b':[4,5,6],'c':[7,8,9],'d':[10,11,12],'name': '张三', 'age': 18, 'sex': '',0: 0, 1: 1, 2: 8}



# 取字典中的值,直接指定key取值时,如果字典中没有对应的key则会报错,用get方法,不会报错,且可以指定一个提示信息

print(dict1['a'])

print(dict1.get('name','没找到'))

print(dict1.get('name1','没找到name1对应的值'))

# 取字典的键

for k in dict1.keys():

    print('取字典的键: ',k)

# 取字典的值

for v in dict1.values():

    print('取字典的值: ',v)

# 取字典的键和值,items()方法返回一个元组

for k,v in dict1.items():

    print('取字典的键dict1.items(): ', k)

    print('取字典的值dict1.values(): ', v)

结果:

[1, 2, 3]

张三

没找到name1对应的值

取字典的键:  a

取字典的键:  b

取字典的键:  c

取字典的键:  d

取字典的键:  name

取字典的键:  age

取字典的键:  sex

取字典的键:  0

取字典的键:  1

取字典的键:  2

取字典的值:  [1, 2, 3]

取字典的值:  [4, 5, 6]

取字典的值:  [7, 8, 9]

取字典的值:  [10, 11, 12]

取字典的值:  张三

取字典的值:  18

取字典的值:  女

取字典的值:  0

取字典的值:  1

取字典的值:  8

取字典的键dict1.items():  a

取字典的值dict1.values():  [1, 2, 3]

取字典的键dict1.items():  b

取字典的值dict1.values():  [4, 5, 6]

取字典的键dict1.items():  c

取字典的值dict1.values():  [7, 8, 9]

取字典的键dict1.items():  d

取字典的值dict1.values():  [10, 11, 12]

取字典的键dict1.items():  name

取字典的值dict1.values():  张三

取字典的键dict1.items():  age

取字典的值dict1.values():  18

取字典的键dict1.items():  sex

取字典的值dict1.values():  女

取字典的键dict1.items():  0

取字典的值dict1.values():  0

取字典的键dict1.items():  1

取字典的值dict1.values():  1

取字典的键dict1.items():  2

取字典的值dict1.values():  8

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值