元组
1.元组就是不可变的列表
元素可以是任何类型的数据
2.元组特有的一些方法和功能
1) 只有一个元素的元组:()中唯一的元素后需要添加逗号
#list1 = [100]
#print(type(list1))
#tuple1 = (100)
#print(type(tuple1))# class “int”
#tupel = (100,)
#print (type(tuple1)) # class"tuple’
2)直接多个数据用逗号隔开表示的也是一个元组(元组的括号在没有起义的时候可以省略)
#tuple2 = (100,200,300)
#tuple3 = 100,200,300
#print(type(tuple3),tuple3)
3)获取元素的时候可以通过让变量的个数和元组中元素的个数保持一致,来分别获取元组中每个元素的值
#point = (100,200)
#x,y = point
#print(x,y)
4)让变量的个数少于元组中元素的个数,并且在一个变量前加*
#先让没*号的变量依次获取元素,然后把剩下的所有元素作为一个列表返回
#stu = (‘小明’,30,‘男’,89,70,56,100)
#name,age,gender,*scores = stu
#a,*b = stu
#a,*b,c = stu
#a,*b,c,d = stu
字典
‘’’
‘’’
问题:用列表同时保存多个意义不同的数据的时候,代码的可读性很低
#stu = [‘小明’,20,“男”‘15367887658’,56,170,89]
解决:用字典保存多个意义不同的数据
#stu = {‘name’:“小明”,
‘age’:20,
‘sex’:“男”,
‘tel’:‘15367887658’,
‘weight’:56,
‘height’:170,
‘score’:89
}
什么是字典(dict)
1.字典是容器型数据类型,将{}作为容器的标志,里面多个元素用逗号隔开(其中元素必须是键值对)
#格式:{键1:值1,键2:值2,键3:值3,…}
#字典是可变的(支持增删改的操作);字典是无序的(不支持下标操作)
#字典的元素:键是不可变的 ,并且是唯一的;值可以是任何类型的数据,并且可重复
#dict1 = {
10:100,
‘abc’:200,
(10,):300,
#}
‘name’:‘四斤’,
‘var’:‘吉娃娃’,
‘color’:‘白色’,
‘age’:‘3个月’,
#}
2.字典元素的增删改查
1)查 -获取字典的值
获取单个值
#1.字典[key] - 获取字典中指定key对应的值(如果key不存在,则会报错)
#2.字典.get(key,) - 获取字典中指定key对应的值(如果key不存在,不会报错,返回None)
字典.get(key,默认值) - 获取字典中指定key对应的值(如果key不存在,不会报错,返回默认值)
#movie1 = {
#‘name’:‘战狼’,
#‘diarector’:‘吴京’,
#‘actor’:‘吴京’,
#‘release_time’:‘2015’,
#‘kind’:‘动作/战争/军事’
}
#print(movie1[‘name’])
#print(movie1[‘kind’])
#print(movie1[‘score’])
#movie2 = {
#‘name’:‘沉默的羔羊’,
#‘diarector’:‘乔纳森·黛米’,
#‘actor’:‘朱迪·福斯特,安东尼·普金斯’,
#‘release_time’:‘1991’,
#‘kind’:‘惊悚’
}
#print(movie2[‘name’])
#print(movie2.get(‘kind’))
#print(movie2.get(‘score’)) #None
#print(movie2.get(‘score’),1)
#方法1:
#for 变量 in 字典:
循环体(变量在循环体中得到的是字典的key)
#print(’===========================================================’)
#for x in movie1:
print(x),movie1[x]
#方法2:
#for 变量1 ,变量2 in 字典.item()
循环体(循环体中变量1取到的所有的键,变量2取到的所有键对应的值)
#for x,y in movie1.items():
print(x,y)
2.增/改 - 添加键值对/修改键值对的值
#1)字典[key] = 值 - 当key不存在,就是添加键值对;当key存在的时候,就是修改key对应的值
#subject = {
#‘name’:‘python’,
#‘score’:3
#‘class_hour’:20
#‘direction’:[‘数据分析’,‘web后端’,‘爬虫’‘自动测试’,‘自动化运维’]
#}
#print(subject)
#subject[‘teacher’] = ‘余婷’
#print(subject)
#subject[‘score’] = 4
#print(subject)
3.删
#del 字典[key] - 删除字典指定key对应的键值对
#字典.pop(key) - 取出字典中指定key对应的值
#del subject[‘class_hour’]
#print(subject)
#del_item = subject.pop(‘direction’)
#print(subject)
#print(del_item)