如何在这个函数中添加一个elsif?

时间:2016-02-13 06:43:01

标签: python django

我有这段代码,

def domain(self):
    long_url = urlparse(self.url).netloc if self.url else "be kind to one another"
    return long_url.split('.', 1)[1] if long_url.split('.', 1)[0] == 'www' else long_url

如果有网址,则会打印网址的域名,否则会打印出彼此友好的网址#34;事情是我现在有视频领域。所以我可以做self.video。我试着写"视频"如果有自我.video。但我一直都在失败。你能帮我么?

1 个答案:

答案 0 :(得分:0)

我真的认为你不应该链if ... else。它使代码难以阅读。但是作为关于语言的一点,是的,它可以被链接,从左到右关联,如下:

>>> 'a' if 1 else 'b' if 1 else 'c'
'a'
>>> 'a' if 0 else 'b' if 1 else 'c'
'b'
>>> 'a' if 0 else 'b' if 0 else 'c'
'c'

同样地

long_url = ('video' if self.video
            else urlparse(self.url).netloc if self.url
            else "be kind to one another")

这是你想要的吗?