“walrus运算符”赋值的多个条件

2024-06-16 09:34:32 发布

您现在位置:Python中文网/ 问答频道 /正文

我想知道是否可以使用“walrus运算符”根据某些条件以及现有条件来分配值。例如,如果该字符串包含某些子字符串,则将该字符串指定给post_url

if post_url := data.get("Post url") and ("youtube" in data.get("Post url")):
    # Do something with post_url
else:
    # Do something else

但是,由于and操作的计算,这只是将布尔值赋值给post_url


Tags: and字符串urldatagetifyoutube运算符
1条回答
网友
1楼 · 发布于 2024-06-16 09:34:32

您可以使用括号按自己的方式对其进行分组,甚至不需要重复data.get

if (post_url := data.get("Post url")) and "youtube" in post_url:
    # Do something with post_url
else:
    # Do something else

这将以任何方式为post_url分配一个值,因此您可以访问None或在else块中不包含"youtube"的URL

相关问题 更多 >