首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用布尔值的python中的属性和类

使用布尔值的python中的属性和类
EN

Stack Overflow用户
提问于 2022-10-20 02:41:43
回答 2查看 72关注 0票数 1

代码的要求如下:创建一个名为Burrito的类。这份玉米煎饼应该有:

  • a属性(is_california)是一种布尔值,它指示玉米煎饼是否是加利福尼亚的玉米煎饼(换句话说,如果里面有薯条!)。

  • 是一个特定于实例的属性,(内容)是墨西哥玉米煎饼.

中的内容列表。

  • A .方法(add_fries)。如果内容列表中还没有薯条,则此方法应将薯条添加到内容列表中,并将is_california更新为true。

我的代码如下:

代码语言:javascript
运行
复制
class Burrito():
    def is_california(self):
        contents = []
        if 'fries' in contents:
            is_california = True
        if 'fries' not in contents:
            is_california = False
    
    def __init__(self,contents = []):
        self.contents = contents
        
    def add_fries(self):
        if 'fries' not in contents:
            contents.append('fries')

当我尝试测试add_fries()时,它不起作用,有什么改进吗?谢谢!

EN

回答 2

Stack Overflow用户

发布于 2022-10-20 03:12:39

短一点的

代码语言:javascript
运行
复制
class Burrito:

    def __init__(self):
        self.contents = []

    @property
    def is_california(self):
        return 'fries' in self.contents

    def add_fries(self):
        'fries' not in self.contents and self.contents.append('fries')

b = Burrito()
print(b.is_california) # False
b.add_fries()
print(b.is_california) # True
票数 0
EN

Stack Overflow用户

发布于 2022-10-20 03:13:33

您不需要一个方法来检查玉米煎饼是否是加利福尼亚的,您可以在更新它时(在__init__()add_fries()中)进行简单的检查。如下所示:

代码语言:javascript
运行
复制
class Burrito():
    def __init__(self, contents=[]):
        self.contents = contents
        self.is_california = 'fries' in contents

    def add_fries(self):
        if 'fries' not in self.contents:
            self.contents.append('fries')
            self.is_california = True


# Burrito 1
b = Burrito(['lettuce', 'cheese'])
print(b.is_california)  # => False
b.add_fries()
print(b.is_california)  # => False

# Burrito 2
b2 = Burrito(['fries', 'tomato'])
print(b2.is_california)  # => True

其他一些答案似乎做错了。is_california必须是布尔属性,根据您的问题,不是方法。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74133874

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档