一笑师兄:用实战、趣味、精炼的大白话讲Python做Python初学者的引路之光
今天写个扑克牌类的游戏 — 炸金花,很多地方也叫做 拖拉机、赢三张之类的名字。
游戏规则是:
具体的游戏规则,等程序做到了再细讲吧!
今天的程序就做第一部分,即生成一副没有大小王的扑克牌。
我们分三步完成:
一、生成 2 ~ A 的一组牌
如下图
# 用列表推导式生成 2~10list1 = [ str(i) for i in range(2, 11)]# 将 J~K增加到列表list1.extend( ['J','Q',"K","A"] )
上述代码,也可以写成:
list1 = []for i in range(2,11): a = str(i) list1.append(a)list1.extend( ['J','Q',"K","A"] )
务必注意,列表命令append与extend的区别,你可以将extend换成append,看看区别。
上述代码的结果为:
['2', '3', '4', '5', '6', '7', '8', '9', '10', 'J', 'Q', 'K', 'A']
二、准备好花色
这一步超级简单,一个列表搞定。这些符号可以通过输入法的特殊符号找到,当然你也可以直接复制。
list2 = ["♦","♠","♥","♣"]
三、生成一副牌
这一部分相比前面两部分难一点,
逻辑是,遍历每一个数字,每一个数字都配上4个花色。
# 建立一个新的列表,用于存储整副扑克牌list_card = []for j in list1:for i in list2: s = j+i list_card.append( s )
生成牌记录在列表 list_card中,结果为
['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♣', '10♦', '10♠', '10♥', '10♣', 'J♦', 'J♠', 'J♥', 'J♣', 'Q♦', 'Q♠', 'Q♥', 'Q♣', 'K♦', 'K♠', 'K♥', 'K♣', 'A♦', 'A♠', 'A♥', 'A♣']
时间原因,炸金花这个游戏这篇文章就先写到这里吧,欢迎关注,下篇文章我们继续!
原文见我的个人网站:https://www.yxpython.com/zhajinhua1/
如果此文对你有帮助,请 点个赞 !
我的小目标 --- 帮助到 10000个朋友轻松入门Python,你的点赞,是我知道你在的最好方式 ❤️想学什么?卡在哪?欢迎留言告诉我!