python字典练习

1.输出字典内数组平均值

方法一:

  1. 首先根据索引找到字典中数组的位置
  2. 用sum方法求出元组内元素之和
  3. sum除以元组元素的个数,求出平均值
a={'name':'Tom','age':20,'address':'北京','score':[89,99,78,95]}
sum = sum(a['score'])
ave = sum/4
print(ave)

方法二:

  1.  首先根据索引找到字典中数组的位置
  2. 利用for循环遍历数组
  3. 累加元素,最终得到所有元素之和
  4. 和除以元素个数求得平均数
a={'name':'Tom','age':20,'address':'北京','score':[89,99,78,95]}
b = a['score']
print(b)
sum = 0
for i in b:
    sum +=i
avg = sum/len(b)
print(avg)

2.输出字典003的所有key,value

keys

返回一个包含字典所有key的列表

values

返回一个包含字典所有vaule的列表

​​​​​​​a={'001':{'name':'张三','age':20,'address':'北京','score':88},
   '002':{'name':'李四','age':20,'address':'北京','score':78},
   '003':{'name':'王五','age':20,'address':'北京','score':95},
   '004':{'name':'小明','age':20,'address':'北京','score':90}
   }
k = a['003'].keys()
print(k)
v = a['003'].values()
print(v)

 3.给所有北京人加100000住房补贴

  1. for循环遍历字典中所有的值
  2. 找到address为'北京'的字典
  3. 在找出的字典中加上‘住房补贴’key,value为10000
a={'001':{'name':'张三','age':20,'address':'北京','score':88},
   '002':{'name':'李四','age':20,'address':'山东','score':78},
   '003':{'name':'王五','age':20,'address':'北京','score':95},
   '004':{'name':'小明','age':20,'address':'河北','score':90}
   }
for i in a.values():
    if i['address'] =='北京':
        i['住房补贴'] = 10000
print(a)

 4.输出二维字典最大age和最小age

  1. 找到字典中key为age的一项
  2. 定义最大值max,最小值min
  3. 循环遍历max依次等于大者,min依次等于小者
a={ '001':{'name':"李四",'age':28,'address':"山东",'score':88},
    '002':{'name':"张三",'age':18,'address':"北京",'score':98},
    '003':{'name':"小明",'age':48,'address':"河北",'score':90},
    '004':{'name':"王五",'age':38,'address':"北京",'score':78}
}
max = a['001']['age']
min = a['001']['age']
for i in a.values():
    if i['age']>max:
        max = i['age']
    elif i['age']

 5.字典
dic = {'k1': 'v1', 'k2': ['sb', 'aa'], (1, 2, 3, 4, 5): {'k3': ['2', 100, 'wer']}}
(1). k2对应的值中添加33
(2).k2对应的值的第一个位置插入一个元素‘s’
(3).将(1,2,3,4,5)对应的值添加一个键值对 ‘k4’:’v4’
(4).将(1,2,3,4,5)对应的值添加一个键值对(1,2,3):‘ok’
(5).将’k3’对应的值的‘wer’改为’qq’。

  1. 找到k2对应的值,dic['k2'],用append方法添加
  2. 找到k2对应的值,dic['k2'],因为要在第一个位置插入已指定,用insert方法
  3. 找到(1,2,3,4,5)对应的值,值里没有k4,用索引添加键值对
  4. 找到(1,2,3,4,5)对应的值,值里没有(1,2,3),用索引添加键值对
  5. k3对应的值的'wer'为第三个值,索引为2,,利用索引直接修改
dic = {'k1': 'v1', 'k2': ['sb', 'aa'], (1, 2, 3, 4, 5): {'k3': ['2', 100, 'wer']}}
dic['k2'].append(33)
print(dic)
dic['k2'].insert(0,'s')
print(dic)
dic[(1,2,3,4,5)]['k4'] = 'v4'
dic[(1,2,3,4,5)][(1,2,3)] = 'ok'
dic[(1,2,3,4,5)]['k3'][2] = 'qq'

 

你可能感兴趣的:(IT)