抽象游戏的东西
AGStuff的Python项目详细描述
抽象游戏内容
安装
pip install AGStuff
要求
- python 3.6或更高版本
用法
卡片
核心
卡(标志)
一些卡来自标准的52张牌组。
由两个符号组成的标志(第一个符号是卡片重量,第二个符号是卡片套装)。
重量符号:'2'
(2),'3'
(3),'4'
(4),'5'
(5),'6'
(6),'7'
(7),'8'
(8),'9'
(9),'T'
(10),'J'
(杰克),'Q'
(女王),'K'
(国王),'A'
(4),'5'
(5),'6'
(6),'6'
(6),'7'
(7),'7'
(7),cd15>}(ace)。
套装符号:'c'
(梅花),'d'
(钻石),'h'
(红心),'s'
(黑桃)。
Sign symbols are ignored since 3rd one.
>>>fromagstuff.cards.coreimportCard>>>card=Card('As')>>>cardA♠>>>card.name'Ace of spades'
可以比较C ards
>>>fromagstuff.cards.coreimportCard>>>card1=Card('9h')>>>card2=Card('5d')>>>card1!=card2True>>>card1<card2False>>>card1>card2True>>>card1==card2False>>>card3=Card('Qc')>>>card4=Card('Qs')>>>card3!=card4False>>>card3<card4False>>>card3>card4False>>>card3==card4True
卡片重量或套装可直接进行比较
>>>fromagstuff.cards.coreimportCard>>>card1=Card('Td')>>>card2=Card('3d')>>>card1.weight!=card2.weightTrue>>>card1.weight<card2.weightFalse>>>card1.weight>card2.weightTrue>>>card1.weight==card2.weightFalse>>>card1.suit!=card2.suitFalse>>>card1.suit==card2.suitTrue>>>card3=Card('7h')>>>card4=Card('7c')>>>card3.weight!=card4.weightFalse>>>card3.weight<card4.weightFalse>>>card3.weight>card4.weightFalse>>>card3.weight==card4.weightTrue>>>card3.suit!=card4.suitTrue>>>card3.suit==card4.suitFalse
也可以使用抽象卡
>>>fromagstuff.cards.coreimportCard>>>card1=Card('8s')>>>card2=Card('K')# abstract king card>>>card3=Card('8')# abstract eight card>>>card1!=card2True>>>card1<card2True>>>card1>card2False>>>card1==card2False>>>card1!=card3False>>>card1<card3False>>>card1>card3False>>>card1==card3True>>>card4=Card('4h')>>>card5=Card('d')# abstract diamonds card>>>card6=Card('h')# abstract hearts card>>>card4!=card5True>>>card4==card5False>>>card4!=card6False>>>card4==card6True
甲板()
标准52张牌组。
共有13个砝码(2,3,4,5,6,7,8,9,10,杰克,王后,国王,王牌)和4套西装(梅花,钻石,红桃,黑桃)。
>>>fromagstuff.cards.coreimportDeck>>>deck=Deck()>>>deck[2♣,2♦,2♥,2♠,3♣,3♦,3♥,3♠,4♣,4♦,4♥,4♠,5♣,5♦,5♥,5♠,6♣,6♦,6♥,6♠,7♣,7♦,7♥,7♠,8♣,8♦,8♥,8♠,9♣,9♦,9♥,9♠,T♣,T♦,T♥,T♠,J♣,J♦,J♥,J♠,Q♣,Q♦,Q♥,Q♠,K♣,K♦,K♥,K♠,A♣,A♦,A♥,A♠]>>>deck.size52>>>cards=deck.push_cards(3)>>>cards# generator of 3 random cards<generatorobjectDeck.push_cardsat0x7f5b1d52e228>>>>list(cards)[6♦,4♣,J♠]>>>deck.size49>>>deck.refresh()>>>deck.size52
卡(卡串=无,卡=无,最大计数=7)
几张牌。
可以从牌组设置卡片
>>>fromagstuff.cards.coreimportDeck,Cards>>>cards=Cards()>>>cards.size0>>>cards[]>>>deck=Deck()>>>deck.size52>>>cards.pull(deck,3)# pull 3 random cards>>>deck.size49>>>cards.size3>>>cards[4♣,5♠,7♦]>>>cards.pull(deck,2)# add 2 more cards>>>cards.size5>>>cards[4♣,5♠,7♦,9♥,J♠]>>>cards.clean()>>>cards.size0>>>cards[]
也可以通过卡片字符串设置卡片
>>>fromagstuff.cards.coreimportCards>>>cards=Cards("2c/3c/4c/5c/6c")>>>cards[2♣,3♣,4♣,5♣,6♣]
也可以通过iterable of card instances设置卡
>>>fromagstuff.cards.coreimportCard,Cards>>>cards=Cards(cards=[Card("Jd"),Card("2s"),Card("6c")])>>>cards[2♠,6♣,J♦]
有可能查明卡片是否包含卡片
>>>fromagstuff.cards.coreimportCard,Cards>>>card1=Card("Qd")>>>card2=Card("8s")>>>cards=Cards("Ad/Kd/Qd/Jd/Td")>>>card1incardsTrue>>>card2incardsFalse
默认情况下,卡片最多可包含52个项目,并且可以更改
>>>fromagstuff.cards.coreimportDeck,Cards>>>cards1=Cards(max_count=7)>>>deck=Deck()>>>cards1.pull(deck,10)>>>cards1[5♣,3♥,Q♠,J♣,J♦,8♠,9♣]>>>cards2=Cards("2s/3s/4s/5s/6s/7s/8s/9s/Ts/Js/Qs/Ks/As",max_count=5)>>>cards2[2♠,3♠,4♠,5♠,6♠]