猫史档案馆


【Python作品分享】扑克_v1.0.2.py

用户:小胡同学加油小胡同学加油查看:0 回复:0 评论:0 创建时间:2023-04-20T20:43:29


【作品展示】

center_image

 

【作品介绍】

自用,请勿抄袭

 

【作品源代码】

import random,sys


kind = ['♥', '♠', '♦', '♣']
number = ['3 ', '4 ', '5 ', '6 ', '7 ', '8 ', '9 ', '10', 'J ', 'Q ', 'K ', 'A ', '2 ']
point_kind = [1, 2, 3, 4]
point_number = [10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120, 130]
point_poke = []
poke_usr1 = ''
poke_usr2 = ''
poke_usr3 = ''
poke_usr1_play = []
poke_usr2_play = []
poke_usr3_play = []
mumber_poke_usr1_play = ''
mumber_poke_usr2_play = ''
mumber_poke_usr3_play = ''
user_play = ''
poke = []
usr1 = []
usr2 = []
usr3 = []
auxiliary = ['喵', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21', '22', '23', '24', '25', '26', '27']
auxiliary_output = ''
user_input_number = int(input('游玩人数\n'))
for i in range(len(auxiliary)):
    if (len(auxiliary[i]) == 1):
        auxiliary[i] = ((' ' + str(auxiliary[i])) + ' ')
    else:
        auxiliary[i] = (' ' + str(auxiliary[i]))
for a in range(len(number)):
    for b in range(len(kind)):
        poke.append((kind[b] + number[a]))
        point_poke.append((point_kind[b] + point_number[a]))
poke.append('JR-')
poke.append('JR+')
point_poke.append(140)
point_poke.append(150)
for i in range((len(poke) * 3)):
    rand = random.randint(0, (len(poke) - 1))
    deleted = poke.pop(rand)
    point_deleted = point_poke.pop(rand)
    poke.append(deleted)
    point_poke.append(point_deleted)
if (user_input_number == 2):
    usr1 = poke[0:27]
    point_usr1 = point_poke[0:27]
    usr2 = poke[27:54]
    point_usr2 = point_poke[27:54]
    point_usr1.sort()
    point_usr2.sort()
    for i in range(len(point_usr1)):
        usr1[i] = poke[point_poke.index(point_usr1[i])]
    for i in range(len(point_usr2)):
        usr2[i] = poke[point_poke.index(point_usr2[i])]
    if (point_usr1[0] == 11):
        user_play = '玩家一'
    elif (point_usr2[0] == 11):
        user_play = '玩家二'
elif (user_input_number == 3):
    usr1 = poke[0:18]
    point_usr1 = point_poke[0:18]
    usr2 = poke[18:36]
    point_usr2 = point_poke[18:36]
    usr3 = poke[36:54]
    point_usr3 = point_poke[36:54]
    point_usr1.sort()
    point_usr2.sort()
    point_usr3.sort()
    for i in range(len(point_usr1)):
        usr1[i] = poke[point_poke.index(point_usr1[i])]
    for i in range(len(point_usr2)):
        usr2[i] = poke[point_poke.index(point_usr2[i])]
    for i in range(len(point_usr3)):
        usr3[i] = poke[point_poke.index(point_usr3[i])]
    if (point_usr1[0] == 11):
        user_play = '玩家一'
    elif (point_usr2[0] == 11):
        user_play = '玩家二'
    elif (point_usr3[0] == 11):
        user_play = '玩家三'
else:
    print('输入错误')
    sys.exit()
while True:
    auxiliary_output = ''
    if (user_play == '玩家一'):
        poke_usr1 = ''
        for i in range(len(usr1)):
            poke_usr1 = ((str(poke_usr1) + str(usr1[i])) + '.')
        print('玩家一手牌:\n', poke_usr1)
        for i in range(len(usr1)):
            auxiliary_output = ((str(auxiliary_output) + str(auxiliary[i])) + '.')
        print('', auxiliary_output)
        print((str(user_play) + ', 请出牌\n出牌张数'))
        mumber_poke_usr1_play = input('')
        if (mumber_poke_usr1_play == 0):
            if (user_input_number == 2):
                poke_usr1_play = poke_usr2_play
                print(('玩家二' + '出牌:'))
            else:
                poke_usr1_play = poke_usr3_play
                print(('玩家三' + '出牌:'))
            print(poke_usr1_play)
        else:
            while True:
                print('出牌')
                try:
                    for i in range(0, int(mumber_poke_usr1_play)):
                        poke_usr1_play.append(usr1[int(input() - 1)])
                    print((str(user_play) + '出牌:'))
                    print(poke_usr1_play)
                    poke_usr1_play.reverse()
                    for i in poke_usr1_play:
                        usr1.remove(i)
                except ValueError or TypeError:
                    print('请重新输入')
                else:
                    for i in range(0, int(mumber_poke_usr1_play)):
                        poke_usr1_play.append(usr1[int(input() - 1)])
                    print((str(user_play) + '出牌:'))
                    print(poke_usr1_play)
                    poke_usr1_play.reverse()
                    for i in poke_usr1_play:
                        usr1.remove(i)
                    break
        if (len(usr1) == 0):
            print('winner:user1')
            sys.exit()
        user_play = '玩家二'
        poke_usr1_play.clear()
    elif (user_play == '玩家二'):
        poke_usr2 = ''
        for i in range(len(usr2)):
            poke_usr2 = ((str(poke_usr2) + str(usr2[i])) + '.')
        print('玩家二手牌:\n', poke_usr2)
        for i in range(len(usr2)):
            auxiliary_output = ((str(auxiliary_output) + str(auxiliary[i])) + '.')
        print('', auxiliary_output)
        print((str(user_play) + ', 请出牌\n出牌张数'))
        mumber_poke_usr2_play = input('')
        if (mumber_poke_usr2_play == 0):
            poke_usr2_play = poke_usr1_play
            print(('玩家一' + '出牌:'))
            print(poke_usr2_play)
        else:
            print('出牌')
            for i in range(0, int(mumber_poke_usr2_play)):
                poke_usr2_play.append(usr2[(int(input()) - 1)])
            print((str(user_play) + '出牌:'))
            print(poke_usr2_play)
        poke_usr2_play.reverse()
        for i in poke_usr2_play:
            usr2.remove(i)
        if (len(usr2) == 0):
            print('winner:user2')
            sys.exit()
        if (user_input_number == 2):
            user_play = '玩家一'
        elif (user_input_number == 3):
            user_play = '玩家三'
        poke_usr2_play.clear()
    elif (user_play == '玩家三' and user_input_number == 3):
        poke_usr3 = ''
        for i in range(len(usr3)):
            poke_usr3 = ((str(poke_usr3) + str(usr3[i])) + '.')
        print('玩家三手牌:\n', poke_usr3)
        for i in range(len(usr3)):
            auxiliary_output = ((str(auxiliary_output) + str(auxiliary[i])) + '.')
        print('', auxiliary_output)
        print((str(user_play) + ', 请出牌\n出牌张数'))
        mumber_poke_usr3_play = input('')
        if (mumber_poke_usr2_play == 0):
            poke_usr3_play = poke_usr2_play
            print(('玩家二' + '出牌:'))
            print(poke_usr3_play)
        else:
            print('出牌')
            for i in range(0, int(mumber_poke_usr3_play)):
                poke_usr3_play.append(usr3[(int(input()) - 1)])
            print((str(user_play) + '出牌:'))
            print(poke_usr3_play)
        poke_usr3_play.reverse()
        for i in poke_usr3_play:
            usr3.remove(i)
        if (len(usr3) == 0):
            print('winner:user3')
            sys.exit()
        user_play = '玩家一'
        poke_usr3_play.clear()

 

【提示】

部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:

https://python.codemao.cn


回复

上一页1 页 / 共 0下一页