python - 我怎样才能漂亮地处理这个脏的多次尝试代码
问题描述
大家好,请帮我修改这段代码。你可能知道我在做什么 拥有 keyError 并不重要,但无论如何我想尝试每个 del 代码。它按我的意图工作,但我很确定有更漂亮的方法可以做到这一点。
try:
del response_json['sha1']
except:
print("keyError: Fail to delete sha1 hash key")
try:
del response_json['sha224']
except:
print("keyError: Fail to delete sha224 hash key")
try:
del response_json['sha256']
except:
print("keyError: Fail to delete sha256 hash key")
try:
del response_json['sha384']
except:
print("keyError: Fail to delete sha384 hash key")
try:
del response_json['sha512']
except:
print("keyError: Fail to delete sha512 hash key")
我可以这样做,但是如果第一个 del 代码引发错误,那么其余代码将不会被执行,对吧?
try:
del response_json['sha1']
del response_json['sha224']
del response_json['sha256']
del response_json['sha384']
del response_json['sha512']
except:
print("keyError: Fail to delete hash key")
谢谢您阅读此篇
解决方案
使用循环迭代值
lst = ['sha1','sha224','sha256','sha384','sha512']
for s in lst:
try:
del response_json[s]
except:
print(f"keyError: Fail to delete {s} hash key")
推荐阅读
- javascript - 如何使 CSS 检查选择器在 IE 和 Chrome 中工作
- gradle - IntelliJ IDEA 2018.2,Gradle 4.9,类路径中未引用外部库
- python - 使用 Python 进程进行多处理
- javascript - Javascript - 如果对象的所有属性都为空,则将其设置为空
- python - 在 python 3.7 中导入 opencv 版本 3.4.2.17
- react-admin - 如何在 SimpleForm 上使用 asyncValidation 显示错误消息?
- javascript - 从 java 脚本调用 php 文件删除函数
- java - 从 CSV 文件中读取 NULL 值
- angular - Angular HttpClient 流式获取请求或有后端触发请求?
- facebook-graph-api - 通过 Android SDK 从 Facebook Graph API 获取公共事件