python - 使用字典的基本异常处理
问题描述
我正在尝试一段代码来处理特定的异常:
try:
my_dict.get(s)
except KeyError:
print("This key does not exist in the dictionary")
return None
else:
print (my_dict.get(s))
return
所以这是函数的一部分,其中 's' 是函数的参数
当try块不抛出异常时,它工作正常并打印与键对应的值
但是当它出现时,我无法打印“字典中不存在此密钥”,我不知道为什么。在 KeyError 的情况下,程序只返回 None。
我知道这一定很明显,但我无法解决,这让我很沮丧
谁能告诉我这个块有什么问题,谢谢
解决方案
dict.get
不养KeyError
,是安全的方法。my_dict[s]
如果要捕获异常,请改用。
推荐阅读
- linux - linux删除线的麻烦,但不是那么简单
- c++ - 不完整类型 'class std::future 的无效使用
- javascript - 同一页面中的多个 var 值
- docker - 控制台生产者错误连接到节点 kafka1:9092 (org.apache.kafka.clients.NetworkClient) java.net.UnknownHostException
- javascript - Chrome 扩展:在后台 JS 中录制麦克风和扬声器
- ios - 有没有办法使用 SwiftUI 将事件添加到日历?
- google-apps-script - 使用谷歌电子表格中的旧数据快照生成 pdf 的脚本?
- go - 使用 Go 中的 eksctl
- windows - 抓取文本文件的内容并将部分文本文件设置为不同的变量
- python - Python 持久规则发布 json 函数和日期格式不起作用