【python基础语法】④字典dict

python的基本数据类型

数据类型含义举例类型
string字符串‘abcd’不可变数据类型
int整数1不可变数据类型
float浮点数1.1不可变数据类型
tuple元组(‘元素1′,’元素2’)不可变数据类型
list列表[‘元素1′,’元素2’]可变数据类型
dict字典{‘元素1′:1,’元素2’:2}可变数据类型

字典是什么?

字典的基本概念:
① 花括号{} 
②键值对(键值对:用英文冒号连接)
③用英文逗号(,)间隔。
字典举例:

#创建一个字典
score={'小明':60,'小华':80,'小芳':66}

#打印字典
print(score)

字典是python常见的数据类型,用于储存具有映射关系的数据。

python的常见数据类型有:列表,元组,字典等

映射关系:指的是两种数据有对应关系。比如 ‘姓名’:’小明’

字典语法:
dict = {key1:value1,key2:value2,key3:value3}

字典中的键值对

键值对 的写法 键:值

  • 键 键是唯一的,所以键的数据类型只能为不可变数据类型,例如 字符串,整数,浮点数,元组。
  • 值 值可以为任意数据类型,且键对应的值可以是多个。所以值的数据类型既可以是可变数据类型,也可以是不可变数据类型。例如 字符串,整数,浮点数,元组,列表,字典等等

get()函数

如果字典中没有对应的键就会报错(KeyError),利用get()函数使字典不会报错(运行结果为None)。

提取键时,若没有该键,则会报错(错误代码 KeyError)

#创建一个字典
score={'小明':60,'小华':80,'小芳':66}

#提取‘狗子’的成绩
name = input('请输入你的名字')

#打印出name的分数
print(score[name])

#会出现KeyError的错误

用get()函数 程序则不会报错,会输出None

#创建一个字典
score={'小明':60,'小华':80,'小芳':66}

#提取‘狗子’的成绩
name = input('请输入你的名字')

#打印出name的分数
print(score.get(name))

字典怎么用?

字典的基本操作:

  • 字典中值的提取
  • 字典中值的修改
  • 键值对增添
  • 键值对删除

字典中值的提取

字典中值的提取是通过键来完成的,而不是通过数字索引,如果错误用了数字索引的话,会出现出错代码:KeyError

字典中值的提取:2种方法 ①字典名[‘键’] ②字典名.get(‘键’)

如果不确定键是否在字典里,就选择 字典.get() 来提取值。

字典中值的提取2种方法


#创建一个字典
score={'小明':60,'小华':80,'小芳':66}

①字典名['键'] 
#提取小明的成绩
print(score['小明'])

②字典名.get('键')
#提取小明的成绩
print(score.get('小明'))

当值是字典时如何提取?

字典名[][]

提取2次就ok

字典中值的修改

字典值修改方法:对键重新赋值

字典中的值的修改: 字典[旧键]=新值

#创建一个字典
score={'小明':60,'小华':80,'小芳':66}

#将小明成绩修改为66
score['小明']=66

#打印info,查看小明的成绩是否修改成功
print(score)

字典:键值对增添

在字典里增加键值对的方法:字典[‘新键名’]=’新值’

增加键值对:

字典['新键名']='新值'

例如:

#创建一个字典
score={'小明':60,'小华':80,'小芳':66}

#增加 小红成绩为90
score['小红']=90

#查看是否删除成功 {'小明': 66, '小华': 80, '小芳': 66}
print(score)

字典:键值对删除

删除键值对 del 字典名[‘键’]

del是英文delete(删除)的缩写。

删除键值对 del字典[键]

#创建一个字典
score={'小明':60,'小华':80,'小芳':66}

#删除小明成绩 
del score['小明']

#打印出score的信息,查看是否删除成功{'小华': 80, '小芳': 66}
print(score)

字典的综合运用

用 for循环 遍历 字典会输出键还是值?

用for循环的变量i遍历字典,输出的i为字典的键 print(i)

#创建一个字典
score={'小明':60,'小华':80,'小芳':66}

#用for循环遍历字典score
for i in score:
    print(i)

    #输出结果为
小明
小华
小芳

从上面的结果看,for循环遍历后,输出结果为key键

那么如何用for循环,输出结果为值?

用for循环的变量i遍历字典,输出结果为对的方法 print(字典名[i])

#创建一个字典
score={'小明':60,'小华':80,'小芳':66}

#用for循环遍历字典score
for i in score:
    print(score[i])

发表评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注