python-字典练习,python-字典,备注:此次练习使用3



备注:此次练习使用3.x解释器

dic = {‘k1‘:‘v1‘,‘k2‘:‘v2‘,‘k3‘:‘v3‘}
# 字典的方法熟悉
# print (dic.keys())#打印key值
# valuses = dic.values()#打印values
# print(valuses)
# print(dic.items())#返回一个包含所有(键,值)元组的列表
# print(dic.__contains__(‘k1‘))#如果key在字典中,返回True,否则返回False;Python 3.X 里不包含 has_key() 函数,被 __contains__(key) 替代
#1、请循环遍历出所有的key
for key in dic.keys():
print(key)
#2、请循环遍历出所有的value
for value in dic.values():
print(value)
#3、请循环遍历出所有的key和value
for item in dic.items():
print("%s %s"%(item[0],item[1]))
#4、请在字典中添加一个键值,‘k4‘:‘y4‘,输出添加后的字典
dic[‘k4‘] = ‘y4‘
print(dic)
#5、请在字典中删除一个键值,‘k1‘:‘y1‘,输出删除后的字典
#del dic[‘k1‘]
dic.pop(‘k1‘)
print(dic)
#6、请删除字典中的键‘k5‘,如果不存在键‘k5‘,则不报错,并且让其返回None
print(‘k5‘ in dic.keys())
#if ‘k5‘ in dic.keys():
if dic.__contains__(‘k5‘):
#del dic[‘k5‘]
dic.pop(‘k5‘)
else:
print(dic.get(‘k5‘))
#7、请获取字典中‘k2‘的值
print(dic.get(‘k2‘))
#8、请获取字典中的键‘k6‘对应的值,如果键‘k6‘不存在,则不报错,并且让其返回none
print(dic.get(‘k6‘))
#9、现有dic2 = {‘k1‘:‘v111‘,‘a‘:‘b‘}通过一行操作使 dic2 = {‘k1‘:‘v1‘,‘k1‘:‘v2‘,‘k3‘:‘v3‘,‘a‘:‘b‘}
dic2 = {‘k1‘:‘v111‘,‘a‘:‘b‘}
dic2.update(dic)
#dic.update(dic2)
print(dic2)
#10、组合嵌套题,有如下列表,按照要求实现每一个功能
lis = [[‘k‘,[‘qwe‘,20,{‘k1‘:[‘tt‘,3,‘1‘]},89],‘ab‘]]
#10.1 将列表lis中的‘tt’变成大写(两种方式)
#lis[0][1][2][‘k1‘] = [‘TT‘,3,‘1‘] #(1)
lis[0][1][2].get(‘k1‘)[0] = ‘TT‘ #(2)
print(lis)
#10.2 将列表lis中数字3变成字符串‘100’(两种方式)
#lis[0][1][2][‘k1‘] = [‘tt‘,‘100‘,‘1‘]#(1)
lis[0][1][2].get(‘k1‘)[1] = ‘100‘ #(2)
print(lis)
#10.3 将列表中‘1’变成数字101(两种方式)
#lis[0][1][2][‘k1‘] = [‘TT‘,‘3‘,101](1)
lis[0][1][2].get(‘k1‘)[2] = ‘101‘ #(2)
print(lis)

#11、现在有一个列表,li = [1,2,3,‘a‘,‘b‘,‘4‘,‘c‘],有一个字典(此字典是
#动态生成的,并不知道里面有多少键值对,所以用 dic = {} 模拟此字典 );
#现在需要完成这样的操作:如果字典没有‘k1’这个键,那么就创建这个‘k1’这个键和
#对应的值(该键值设为空列表),并将列表li中的索引位为奇数对应的元素,添加到‘k1’
#这个键对应的值中。
li = [1,2,3,‘a‘,‘b‘,‘4‘,‘c‘]
dic = {}
dic.setdefault(‘k1‘,[])
for i in li:
if li.index(i) % 2 == 1:
dic[‘k1‘].append(i)
print (dic)

python-字典练习

评论关闭