else
/ elif
used after return
PYL-R1705390
391 if len(found_jbs) > 0:
392 def sort(x):
393 if x.get("compatibility")[0].get("priority") is not None:394 return str(x.get("compatibility")[0].get("priority"))
395 elif x.get("priority") is not None:
396 return str(x.get("priority"))
72
73 @staticmethod
74 def prefixcalc(levelname: str):
75 if levelname == 'DEBUG': 76 return '```bash#| '
77 elif levelname == 'INFO':
78 return '```diff\n+ | '
87
88 @staticmethod
89 def suffixcalc(levelname: str):
90 if levelname == 'DEBUG': 91 return ' ]```'
92 elif levelname == 'WARNING':
93 return ' ]```'
472 else:
473 await info.message.clear_reactions()
474
475 if not info.raw_emoji:476 return str(reaction.emoji), reactor
477 else:
478 return reaction, reactor
404 else:
405 await response.delete()
406 await prompt_msg.delete()
407 if response.content.lower() == "cancel":408 return
409 elif not response.content:
410 info.reprompt = True
The use of else
or elif
becomes redundant and can be dropped if the last statement under the leading if
/ elif
block is a return
statement.
In the case of an elif
after return
, it can be written as a separate if
block.
For else
blocks after return
, the statements can be shifted out of else
. Please refer to the examples below for reference.
Refactoring the code this way can improve code-readability and make it easier to maintain.
def classify_number(x):
if x % 2 == 0:
return 'Even'
else:
return 'Odd'
def what_is_this_number(x):
if x % 2 == 0 and x >= 0:
return 'Even'
elif x % 2 == 0 and x < 0:
return 'Even and Negative'
elif x % 2 != 0 and x < 0:
return 'Odd and Negative.'
else:
return 'Odd'
def classify_number(x):
if x % 2 == 0:
return 'Even'
return 'Odd'
def what_is_this_number(x):
if x % 2 == 0 and x >= 0:
return 'Even'
if x % 2 == 0 and x < 0:
return 'Even and Negative'
if x % 2 != 0 and x < 0:
return 'Odd and Negative'
return 'Odd'