擅长:python、mysql、java
<p>在文档中,“每当请求dict()对象(使用格式a=adict[key]),并且该键不在字典中时,Python就会引发KeyError。”因此,您应该检查except块中的KeyError:</p>
<pre><code>try:
c2 = ....
except KeyError:
print("\n>>>An exception occured ~ invalid i/p")
print("\t~Customer not in database")
</code></pre>
<p><strong>编辑:</strong>
您可以将try/except重组为:</p>
<pre><code> try:
c2 = input("Customer 2")
customer2 = BankSystem.c[c2]
if "c2" in BankSystem.c: ## check for valid account id
print(customer2)
amount = float(input("Amount to transfer "))
self.tranfer(customer2, amount)
else:
print("\n>>>>>>>account:{} does not exist".format("c2"))
print(self)
print(customer2)
except KeyError:
print("\n>>>An exception occured ~ invalid i/p")
print("\t~Customer not in database")
except ValueError:
print("\n>>>An exception occured ~ invalid i/p")
print("\t~Non-numeric data entered")
</code></pre>