【发布时间】:2019-10-08 04:23:19
【问题描述】:
致力于创建我自己的对象和类,并尝试编写一种方法来检查对象中的数字,如果发现小于 50,它将替换另一个具有预定义的对象的布尔值False 的定义值。
目前我有一个 if/else 语句来检查 gamePrice 的值是否小于 50,如果是,它应该将 isASteal 的值更改为 True。如果大于 50,则应更改为 False。 isASteal 的默认值设置为 False,gamePrice 的默认值为 0
class videoGames(object):
def __init__(self, gameName = '', gamePrice = 0, isASteal = False):
self.gameName = gameName
self.gamePrice = gamePrice
self.isASteal = isASteal
def gameValue(self):
if self.gamePrice == 0 or self.gamePrice >= 50:
self.isASteal = False
else:
self.isASteal = True
fullGames = 'Title:{}\t\ Price: ${}\t\ Steal: {}'.format(self.gameName, self.gamePrice, self.isASteal)
return fullGames
如果用户通过以下方式调用函数:
game1 = videoGames('Call of Duty', 15)
他们应该得到如下所示的输出:
Title: Call of Duty Price: $15 Steal: True
我得到的是:
Title: Call of Duty Price: $15 Steal: False
【问题讨论】:
-
我运行了你的代码并得到了正确的答案,你能再检查一下问题吗
-
您不应该在不在方法中的类中有代码。请检查您的缩进。
-
@DeveshKumarSingh 它不起作用
-
你在做
print(game1.gameValue())吗?我得到输出Title:Call of Duty \ Price: $15 \ Steal: True -
不,我正在打印(game1)
标签: python python-3.x object boolean operators