Python实现炸金花游戏的示例代码

本文主要介绍了Python实现炸金花游戏的示例代码,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。编程学习资料点击领取

今天的第二个作品,哈哈哈哈,搞起来感觉还挺有意思的,不过代码里纸牌J,Q,K,A几个数字被我替换成了11,12,13,14......主要是没有想到简单的办法让其比较,索性都用数字了,我太菜了,希望有大佬指点一下。

代码如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

import random   #导入随机数函数

def puke():

    """

    生成一副52张的扑克牌(除去大小王)

    :return:

    """

    list1 = ['黑桃', '红桃', '方块', '梅花']

    list2 = [2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]

    list3 = []

    for i in list1:

        for j in list2:

            dict1 = {i: j}

            list3.append(dict1)

    return list3

def func(num):

    """

    判断随机生成的三张扑克类型,对不同类型的牌 底分进行相应的翻倍

    其中num参数返回的是对玩家牌型计算后的分数。

    (最小单张是:2,

    11,12,13,14  分别代表:J,Q,K,A)

    :param num:

    :return:

    """

    user_list1 = []     #用于存储牌的花色

    user_list2 = []     #用于存储牌的数字

    global list4     #声明调用外部全局变量

    for i in list4:

        user_list1.append(list(i.keys()))

        for j in i:

            user_list1.append(list(i.values()))

    user_list2.append(user_list1[1])        #将遍历后的数字添加进user_list2中

    user_list2.append(user_list1[3])

    user_list2.append(user_list1[5])

    user_list2 = [int(x) for item in user_list2 for x in item]      #合并列表

    user_list2.sort()       #列表排序

    if user_list2[0] == user_list1[1] == user_list1[2]:     #判断三张数字是否相同

        num = user_list1[1][0] * 100000 + zhadan

    elif user_list1[0] == user_list1[2] == user_list1[4] and user_list2[2] - user_list2[1] == user_list2[1] - \

            user_list2[0] == 1:     #判断三张花色是否相同且连号

        num = user_list2[1] * 10000 + shunjin

    elif user_list2[2] - user_list2[1] == user_list2[1] - user_list2[0] == 1:       #判断是否连号

        num = user_list2[1] * 1000 + shunzi

    elif user_list2[0] == user_list2[1] or user_list2[1] == user_list2[2] or user_list2[2] == user_list2[0]:        #判断是否有两个一样的数字

        if user_list2[0] == user_list2[1]:

            num = user_list2[0] * 100 + duizi

        if user_list2[0] == user_list2[2]:

            num = user_list2[2] * 100 + duizi

        if user_list2[

  • 4
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值