字典--取key、取value、元组、键值对,添加,删除
#字典的使用#字典是一个容器类,可以用来存储数据#列表存储数据特点:1.有序的 2.每一个数据都有一个索引,通过索引可以对数据进行查询、修改、删除#字典存储数据:key:value(键值对)#key 必须是不可变的,一般使用字符串作为字典中的key,也可以使用数字等不可变类型的值#key是唯一的 如果有多个相同的key的情况,保留最后一个key对应的值#字典中存储的
·
#字典的使用
#字典是一个容器类,可以用来存储数据
#列表存储数据特点:1.有序的 2.每一个数据都有一个索引,通过索引可以对数据进行查询、修改、删除
#字典存储数据:key:value(键值对)
#key 必须是不可变的,一般使用字符串作为字典中的key,也可以使用数字等不可变类型的值
#key是唯一的 如果有多个相同的key的情况,保留最后一个key对应的值
#取出字典中的值
#根据key取出字典中的值
#如果这个key不存在,添加数据,如果key存在,修改这个key对应的值
#字典是一个容器类,可以用来存储数据
#列表存储数据特点:1.有序的 2.每一个数据都有一个索引,通过索引可以对数据进行查询、修改、删除
#字典存储数据:key:value(键值对)
#key 必须是不可变的,一般使用字符串作为字典中的key,也可以使用数字等不可变类型的值
#key是唯一的 如果有多个相同的key的情况,保留最后一个key对应的值
#字典中存储的数据是没有顺序的
dict_1={'name':'zhangsan','age':22,'phone':110,'sex':'男'}
#取出字典中的值
#根据key取出字典中的值
name=dict_1['name']
print(name)
#get(key,defalut)函数,获取字典中对应的key值,如果key不存在,取默认值,如果key存在,取出对应的结果(第二个默认值不填写的话为:None)
name=dict_1.get('sss','0')
print(name)
#向字典中添加数据
#如果这个key不存在,添加数据,如果key存在,修改这个key对应的值
dict_1['name']='lisi'
dict_1['sss']='4s'
print(dict_1)
#删除字典中的数据
del dict_1['sss']
print(dict_1)
#pop(key) key必要参数,要移出的数据对应的key
s=dict_1.pop('name')
print(s)
#popitem() 随机从字典中取出一个键值对,并且将键值 放在元组中
s=dict_1.popitem()
print(s)
#删除字典中所有的键值对
# dict_1.clear()
# print(dict_1)
#获取字典中所有的key
keys=dict_1.keys()
print(keys)
print(type(keys))
#取出所有的keys
for key in keys:
# print(key)
#根据key取出对应的值
value=dict_1[key]
print('%s:%s'%(key,value))
#获取字典中所有的value
values=dict_1.values()
# print(values)
print('------------------')
#for循环 取出所有的value
for value in values:
print(value)
#获取字典中所有的键值对
items=dict_1.items()
#[('phone', 110), ('sex', '男')]
# print(items)
#for循环遍历items
for item in items:
# print(item)
#从元组中 根据索引取出数据
key=item[0]
value=item[1]
print('键:%s值:%s'%(key,value))
#判断字典中是否拥有某个key
#python2中 有has_key函数,可以直接调用
if 'phone' in dict_1.keys():
print('有这个key')
else:
print('没有这个key')
'''
生成一个列表,存放100个随机整数,找出出现次数最多的数字(可能不止一个)
'''
定义一个元组,把数字和次数添加进去!!!!!!!!!!
numbers=[1,2,4,25,6,32,51,53,66,1,3,77,5]
#max()取出列表中最大值 min()取出最小值
number=max(numbers)
print(number)
print('***********************************')
import random
#列表推导式/生成式
numbers=[random.randint(0, 100)for x in range(0,100)]
#[最终放在列表中的数据 for循环]
#number2=[x*x for x in range(0,100)]
print(numbers)
result_dict={}
for num in numbers:
#获取数字在列表中出现的次数
count=numbers.count(num)
# print('数字:%s 次数:%s'%(num,count))
#把数字num作为key,出现的次数count作为value
result_dict[num]=count
#找出字典中最大的值,这个值就是出现次数最高次数
h_count=max(result_dict.values())
print(h_count)
#通过次数,找到次数对应的值
for item in result_dict.items():
#item键值对的小元组
value=item[1]
if value==h_count:
key=item[0]
print('出现次数最多的数字为:%s,次数为:%s'%(key,value))
更多推荐
已为社区贡献1条内容
所有评论(0)