猿问

除非语句的 Python 语法

我的要求很简单,但我不知道如何进行:

我想在 python 中翻译一个除非语句如下:

taken_asks -= 1 unless taken_asks == 0

这只是一行代码,它是一个非常大的函数的一部分。任何的想法?

先感谢您 !


HUX布斯
浏览 197回答 3
3回答

扬帆大鱼

taken_asks -= (1 if taken_asks != 0 else 0)

九州编程

短一点。taken_asks -= (taken_asks != 0)# (taken_asks != 0) is a boolean value, boolean value in Python is int.# True is 1, False is 0或者taken_asks = max(taken_asks-1, 0)

犯罪嫌疑人X

对我来说,最明显的解决方案是unless变成if not,在这种情况下:if not taken_asks == 0:    taken_asks -= 1可以写成一行形式if not taken_asks == 0: taken_asks -= 1存在其他方法,但如果您需要可读性,我认为这是少数。
随时随地看视频慕课网APP

相关分类

Python
我要回答