Break Statements helps reduce Production Risk
bad
def contains_magic_number(list, magic_number):
for i in list:
if i == magic_number:
print "This list contains the magic number."
else:
print "This list does NOT contain the magic number."
good
def contains_magic_number(list, magic_number):
for i in list:
if i == magic_number:
print "This list contains the magic number."
break # added break statement here
else:
print "This list does NOT contain the magic number."
Â
Why you should care
The else
 clause of a loop is executed when the loop sequence is empty. When a loop specifies no break
 statement, the else
clause will always execute, because the loop sequence will eventually always become empty. Sometimes this is the intended behavior, in which case you can ignore this error. But most times this is not the intended behavior, and you should therefore review the code in question.
Business Impacts
CAST recommendations
References
https://www.quantifiedcode.com/knowledge-base/correctness/%60else%60%20clause%20on%20a%20loop%20without%20a%20%60break%60%20statement/4aqWoDeY
About CAST and Highlight’s Code Insights
Over the last 25 years, CAST has leveraged unique knowledge on software quality measurement by analyzing thousands of applications and billions of lines of code. Based on this experience and community standards on programming best practices, Highlight implements hundreds of code insights across 15+ technologies to calculate health factors of a software.