如何解决我该如何精美地处理这个肮脏的多次尝试代码
大家好,请帮助我修改此代码。 你可能知道我在做什么 有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")
,
我认为response_json是字典,而不仅仅是列表。 我认为您需要更动态,更适应所有情况的东西。只需填充键并一个接一个地删除每个键值对即可。 此解决方案适用于您将来遇到的任何长度和字典。
json_keys = [ key for key in response_json]
for keys in json_keys:
try:
del response_json[keys]
except:
print(f"keyError: Fail to delete hash key")
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。