2021-01-27 13:42:22 +01:00
|
|
|
Creating a new ``++Exception++`` without actually raising it has no effect and is probably due to a mistake.
|
2020-06-30 12:48:39 +02:00
|
|
|
|
|
|
|
== Noncompliant Code Example
|
|
|
|
|
|
|
|
----
|
|
|
|
def func(x):
|
|
|
|
if not isinstance(x, int):
|
|
|
|
TypeError("Wrong type for parameter 'x'. func expects an integer") # Noncompliant
|
|
|
|
if x < 0:
|
|
|
|
ValueError # Noncompliant
|
|
|
|
return x + 42
|
|
|
|
----
|
|
|
|
|
|
|
|
== Compliant Solution
|
|
|
|
|
|
|
|
----
|
|
|
|
def func(x):
|
|
|
|
if not isinstance(x, int):
|
|
|
|
raise TypeError("Wrong type for parameter 'x'. func expects an integer")
|
|
|
|
if x < 0:
|
|
|
|
raise ValueError
|
|
|
|
return x + 42
|
|
|
|
----
|
|
|
|
|
|
|
|
== See
|
|
|
|
|
|
|
|
* https://docs.python.org/3/tutorial/errors.html#raising-exceptions[Python documentation - Raising Exceptions]
|