gpt4 book ai didi

pylint - 为什么 pylint 在 "elif"(no-else-return) 之后提示不必要的 "return"?

转载 作者:行者123 更新时间:2023-12-03 20:24:39 44 4
gpt4 key购买 nike

为什么 pylint 提示这个代码块?R1705: Unnecessary "elif" after "return" (no-else-return)

def f(a):
if a == 1:
return 1
elif a == 2:
return 2
return 3
为了防止错误,我不得不创建一个临时变量,这感觉不太愉快。
def f(a):
if a == 1:
b = 1
elif a == 2:
b = 2
else:
b = 3

return b
解决方案 :
def f(a):
if a == 1:
return 1
if a == 2:
return 2
return 3

最佳答案

else 的目的 block 是定义如果条件为真则不会执行的代码,因此执行不会继续到下一个 block 。
但是,在您的代码中,主条件 block 有一个 return 语句,这意味着执行将离开函数,因此不需要 else block :根据定义,如果条件为真,则 return 之后的所有后续代码都不会被执行.这是多余的。可以用简单的if代替.

关于pylint - 为什么 pylint 在 "elif"(no-else-return) 之后提示不必要的 "return"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63755912/

44 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com