return 语句过多 (PLR0911)
源自 Pylint 代码检查工具。
作用
检查具有过多 return 语句的函数或方法。
默认情况下,此规则允许最多六个 return 语句,这可以通过 lint.pylint.max-returns
选项进行配置。
为什么这不好?
具有许多 return 语句的函数或方法更难理解和维护,并且通常表明逻辑复杂。
示例
def capital(country: str) -> str | None:
if country == "England":
return "London"
elif country == "France":
return "Paris"
elif country == "Poland":
return "Warsaw"
elif country == "Romania":
return "Bucharest"
elif country == "Spain":
return "Madrid"
elif country == "Thailand":
return "Bangkok"
else:
return None
建议改为
def capital(country: str) -> str | None:
capitals = {
"England": "London",
"France": "Paris",
"Poland": "Warsaw",
"Romania": "Bucharest",
"Spain": "Madrid",
"Thailand": "Bangkok",
}
return capitals.get(country)