python字典不存在
‘壹’ python3里关于字典的问题01
ifnameinzidian:
print(zidian[name])
else:
print('notfound')
‘贰’ 关于Python字典的相关问题
楼主是想实现以下功能:
①输入姓名查询生日;
②如不存在输入的姓名,则a添加这个姓名;b再给这个键添加值;
③字典内容的保存
楼主你可使用birthday.get(key, default)来实现==其中default表示不存在的键返回默认值(如birthday.get('韩山', “NULL")),也就是表示这个键值对在字典中不存在。这样操作不会有错误提示,只会返回你的default值。
因此,当检测到"NULL"时,将这个键值对添加(birthday['韩山'] = '3月3日' 到字典中就是。
至于内容的保存,你需借助文本文件的读写来完成。
这只是一个大概的思路,还需根据你的具体需求进行适当的修改。
如有帮助,请采纳!
‘叁’ python中字典为什么传递了不显示
因为字典对象是可变的,它是一个容器类型。
代码如下uhash的值是从网址中截取的然后传递给一个php页面,应该返回一个文件流,但返回的不是文件流。但是把uhash值用字面值赋值,就可以返回文件流。
字典是一个无序、可变和有索引的集合。在Python中,字典用花括号编写,拥有键和值。Python中的字典是python的一种数据结构,它的本质是key和value以及其对应关系的一种集合,一个key可以对应一个多个value。合理的使用字典能给我们编程带来很大的方便。
‘肆’ python中字典的使用方法怎么样的
字典理解如下
另一个非常有用的 Python 内建数据类型是 字典 (参见 Mapping Types — dict )。字典在某些语言中可能称为 联合内存 ( associative memories )或 联合数组 ( associative arrays )。序列是以连续的整数为索引,与此不同的是,字典以 关键字 为索引,关键字可以是任意不可变类型,通常用字符串或数值。如果元组中只包含字符串和数字,它可以作为关键字,如果它直接或间接的包含了可变对象,就不能当作关键字。不能用列表做关键字,因为列表可以用索引、切割或者 append() 和 extend() 等方法改变。
理解字典的最佳方式是把它看作无序的键: 值对 (key:value 对)集合,键必须是互不相同的(在同一个字典之内)。一对大括号创建一个空的字典: {} 。初始化列表时,在大括号内放置一组逗号分隔的键:值对,这也是字典输出的方式。
字典的主要操作是依据键来存储和析取值。也可以用 del 来删除键:值对(key:value)。如果你用一个已经存在的关键字存储值,以前为该关键字分配的值就会被遗忘。试图从一个不存在的键中取值会导致错误。
对一个字典执行 list(d.keys()) 将返回一个字典中所有关键字组成的无序列表(如果你想要排序,只需使用 sorted(d.keys()) )。[2] 使用 in 关键字(指Python语法)可以检查字典中是否存在某个关键字(指字典)。
‘伍’ python 字典是否有key
第一种方法:使用自带函数实现。
在python的字典的属性方法里面有一个has_key()方法,这个方法使用起来非常简单。
例:
#生成一个字典d = {'name':{},'age':{},'sex':{}}#打印返回值print d.has_key('name')#结果返回True
第二种方法:使用in方法
#生成一个字典d = {'name':{},'age':{},'sex':{}}#打印返回值,其中d.keys()是列出字典所有的keyprint name in d.keys()#结果返回True
上面两种方式,我更推荐使用第二种,因为has_key()是python2.2之前的方法,而且使用in的方法会更快一些。
最后告诉大家一点:除了使用in还可以使用not in,判定这个key不存在哦~
‘陆’ python自定义一个非空字典,用户通过键盘输入数据,判断输入的据是否在字典中
# 用python自定义一个非空字典,用户通过键盘输入数据,判断输入的据是否在字典中,若在,则删除余对应的键值对,输出已删除”;否则出不存在
dict = {'A': 1, 'B': 2, 'C': 3, 'D': 4, 'E': 5, 'F': 6, 'G': 7}
a = input('请输入:')
if dict.get(a):
dict.pop(a)
print('已删除')
else:
print('不存在!')
‘柒’ python 字典问题
letterCounts[letter] = letterCounts.get (letter, 0) + 1
这个是计数的常见写法,意思是如果letter没有在字典里存在,那么就返回0,这个0相当于一个初始化的值.
在比较复杂的初始化默认值个人建议应该使用collections.defaultdict来替代字典.
如果改一下,可以变成
import collections
letterCounts = collections.defaultdict( int )
for letter in "Mississippi":
letterCounts[ letter ] += 1
print( letterCounts )
‘捌’ python 字典列表值可能空如何建字典
data = dict()
data["a"] = 'v1'
data["b"] = 'v2'
如果没有c可以不赋值,也可以
data["c"] = ''
取值时可以data.get("c", None)意思是如果存在c就返回值,不存在就返回None