如何在Python的if-else语句中添加bool?

2024-04-19 06:11:21 发布

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

class Wheels(Car):
    def __init__(self, name, noise, canMakeNoise):
        self.name = name
        self.noise = noise
        self.canMakeNoise = Bool

    def makeNoise(self):
        if canMakeNoise = False:
            Wheels.name + "" + "vroom"
        else: 
            print Wheels.name + "" + "remains silent"

如果运行该代码,会出现以下错误:

File "python", line 26
    if canMakeNoise = False:
                    ^
SyntaxError: invalid syntax

如何在Python的if-else语句中添加bool?你知道吗


Tags: nameselffalseifinitdefcarelse
3条回答

你不应该这样做。在Python中正确的方法是:

if not canMakeNoise:

以及:

if canMakeNoise:

相反。从PEP 8

Don't compare boolean values to True or False using ==.

Yes: if greeting:
No: if greeting == True:
Worse: if greeting is True:


为了完整起见,您需要使用==进行比较。=用于赋值。

您可以使用三元if/else,也可以使用str.format将使您的串联更加出色:

print"{} remains silent".format(Wheels.name) if canmakeNoise else "{} vroom".format(Wheels.name)
def makeNoise(self):
    if canMakeNoise:
        print Wheels.name + "" + "remains silent"
    else: 
        Wheels.name + "" + "vroom"

相关问题 更多 >