ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

python中dict字典的简单了解

2019-02-24 14:37:58  阅读:369  来源: 互联网

标签:dict1 python ONG dict low key team print 字典


'''
概述:
使用键-值(key-value)存储,具有极快的查找速度
注意!!:字典是无序的

key的特性:
1、字典中的key必须唯一
2、key必须是不可变的对象
3、字符串、整数都是不可变的,可以作为key
4、list是可变的,不能作为key

思考:保存多位学生的姓名和成绩

使用字典,学生姓名为key,学生成绩作为值

list用[]
tuple用()
dict用{}

'''
#get 如果key不在字典中则会返回None


dict1={"tom":60,"li":70}#存两个人的信息
#元素的访问
#获取:字典名[key]
print(dict1["tom"]) # 60
#print(dict1["lilei"]) #没有会报错
print(dict1.get("lilei"))#访问get中的支付串,如果没有会返回None
'''
dict1={"tom":60,"li":70}
#输入一个人名,查找其成绩
index=str(input("请输入你要查找的人名"))
ret =dict1.get(index)#查找字典中是否有输入的人
if ret==None:
print("没有该学员")
else:
#print("有该学员") #60
print(dict1.get(index))
'''
#添加
dict1["hanmeimei"]=99#添加key和value
#因为一个key对应一个value,所以多次队一个Key的value赋
# 值,其实就是修改值
dict1["li"]=80#修改key 的值
print(dict1)#{'tom': 60, 'li': 80, 'hanmeimei': 99}

#删除
dict1.pop("tom")
print(dict1)



#遍历

for key in dict1:
print(key,dict1[key])#hanmeimei 99

#print(dict1.values())

#values()只提前成绩
for value in dict1.values():#提取所有成绩,
print(value)#
# 60
# 80
# 99

#items()提前名和成绩
for k,v in dict1.items():#提前key和value
print(k,v) #tom 60
#li 80
#hanmeimei 99
#enumerate()排序后取出名(key)
for i,v2 in enumerate(dict1):#给字典排序后提取
print(i,v2)# 0 tom
# 1 li
# 2 hanmeimei


#dict和list比较
#1、查找和插入的速度极快,不会随着key-value的增加而变慢
#2、需要占用大量内存,内存浪费多
'''
a=input()
#a="low"
str="ONG IS a low team. ONG IS a low team." \
" ONG IS a low team. ONG IS a low team. ONG IS a low team. ONG IS a low team." \
" ONG IS a low team. ONG IS a low team. ONG IS a low team." \
" ONG IS a low team. ONG IS a low team."

print(sr.count(a))#查找字符在字符串中出现的次数,可以单词,也可以是
一个字母
'''
'''
在字符串中找到输入的字符出现次数,如果没有会报错

a=input(“输入想要找的单词”)#输入一个要找的字符
d={} #定义一个空字典
str="ONG IS a low team. ONG IS a low team." \
" ONG IS a low team. ONG IS a low team. ONG IS " \
"a low team. ONG IS a low team." \
" ONG IS a low team. ONG IS a low team. ONG IS a low team." \
" ONG IS a low team. ONG IS a low team."
x=str.split(" ")#按空格选取字符串,并赋值给x
for v in x: #循环处理列表中的每一个元素
c=d.get(v) #提取x中单词,如果字典中没有,则返回None,并将这个作为key存入字典
if c==None:
d[v]=1 #给字典中的key赋值对应的value
else:
d[v]+=1
if a!=d[v]:
print("字符串中没有该单词!")
else:
print(d[a])
#print(len(x))#计算一个有多少个单词
如果输入没有的会报错
1、以空格切割字符串
2、循环处理列表中的每个元素
3、以元素当做key去字典中提前数据
4、如果没有提前到,就以该元素作为key,1作为value存进字典
5、如果提前到,将对应的key的value修改,值加1
6、根据输入的字符串当做key再去字典取值
'''

标签:dict1,python,ONG,dict,low,key,team,print,字典
来源: https://www.cnblogs.com/zlong123/p/10426118.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有