Izz*_*sin 6 python if-statement
是否有可能:
for k,v in kwargs.items()
if v == None or v == '' or v == 1.0 or v == False:
del kwargs[k]
Run Code Online (Sandbox Code Playgroud)
如果v == 0.0,不删除密钥?(假似乎等于0.0),并且没有删除等于True的键.
mou*_*uad 12
或者你可以这样说:
if v in (None, '', 1.0) or v is False:
Run Code Online (Sandbox Code Playgroud)
Mar*_*ers 11
你应该使用v is False
而不是v == False
.这同样适用于您的比较None
.请参阅PEP 8 - Python样式指南:
像None这样的单例的比较应该总是用'is'或'is not'来完成,而不是等于运算符.
从PEP 8开始,根据你的建议减速
不要使用==将布尔值与True或False进行比较
Run Code Online (Sandbox Code Playgroud)Yes: if greeting: No: if greeting == True: Worse: if greeting is True:
同时比较浮点值你不应该使用==但是
abs(x-other)<verysmall