繁体   English   中英

在Python中是否可以使用主IF条件构造单行RETURN语句,而该条件是其他条件检查的“门户”?

[英]Is it possible in Python to construct a one-liner RETURN statement with a main IF condition that is a “gateway” for other conditions to check?

我将尝试通过示例代码使其更加清晰:

def is_opposite(string_1, string_2):
    if string_1.lower() == string_2.lower():
        if len(string_1) == # some value:
            return # do smth
        elif len(string_2) == # some value:
            return # do smth
    return # do smth

if string_1.lower() == string_2.lower():有一个主要条件:当False时,阻止嵌套代码块运行的条件。 那么如何在单个return ...行中编写该代码? 如果能。

谢谢。

如果仅出于可操作性考虑,则可以调和三元x if y else z运算符):

return 1 if string_1.lower() != string_2.lower() else 2 if len(string_1) == 3 else 3 if len(string_2) == 4 else None

但是在任何严重的生产环境中,您的同事都不会非常喜欢您;)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM