好吧,在看了很多关于课程的教程视频之后,我仍然很难理解这些课程。在
我需要写一个程序,基本上做高卡,这意味着我需要2张牌面对面和一个是赢家与西装和排名。在
2-14级(11=杰克,12=皇后,13=国王,14=王牌)
1-4正装(梅花、钻石、红桃、黑桃)
这就是我目前所拥有的
class Card:
def __init__(self, inRank, inSuit):
self.__rank = inRank
self.__suit = inSuit
有人能给我指一下正确的方向吗?我不知道该怎么开始。在
Tags:
只是一个简短的旁注。Python mangles class and instance variables,其名称以两个下划线开头。我建议使用一个下划线(或者根本没有下划线)。在
回到你原来的问题上来。我的下一步是创建一个接受另一个card实例的方法
faceoff
。这个方法可以返回获胜的卡片,也可以返回一个布尔值,告诉你调用方是否赢了。在例如:
你的类很好,尽管我会删除属性中的下划线,因为你没有实现任何比较对象的方法。我将定义一个
face_off
-函数,它接受card
对象作为参数并返回优胜者。如果我理解正确,您只需比较两张牌的rank
属性,并返回较高的值。然后把整个东西包装在一个if __name__ == '__main__'
块中。在实际上,您甚至不需要类,卡片可以是},但是如果您想要一个类,那么可以为您的类定义{a1},这样就可以比较对象而不是属性。然后可以利用python的内置函数,
dict
或{faceoff
只返回max(card_object_one, card_object_two)
。默认情况下,这适用于dict和tuples。在相关问题 更多 >
编程相关推荐