Python写打麻将程序

开篇语

哪怕有空也不想做正事,所觉得最近Python有点不熟悉了,就操起我的Python,直接怼了一个打麻将的小程序。虽然目前还是没有Debug完,不过好歹还是有个能用的东西,至于GUI什么的,暂时做不到啦。先把代码存这儿吧。有兴趣玩玩的朋友可以直接复制下去看看bug在哪啊,我明天就要出发准备去学校了。还是玩玩即可,不要太认真了。

麻将

正文

代码如下:

def Check(Card,win,Double):
    GetCard(Card)

    if CheckIfPeng(Card):
        Peng(Card,Double)

    if CheckIfWin(Card,Double):
        win=1
    else:
        OutputCard(Card)


def InputCard(Card):
    card=Card
    for i in range(1,14):
        print("来吧,一支一支的输入你的牌,让我给你看看手气:\n 1-9代表一万到九万\n 21-29代表一条到九条\n 51-59代表一坨到九坨\n")
        pai=input("第%s只\n"%i)
        card.append(pai)



def GetCard(Card):
    pai=input("抽牌吧,神奇的左手:")
    Card.append(pai)


def CheckIfPeng(Card):
    count=0
    for i in range(1,14):
        if Card[i]==Card[-1]:
            count=count+1
    if count>2:
        return 1
    else:
        return 0


def Peng(Card,Double):
    count=0
    for i in range(1,14):
        if Card[i]==Card[-1]:
            count=count+1
    if count>2:
        if Card[i]==Card[-1]:
            for i in range(1,count+1):
                Double.append(Card[-1])
                Card.pop(i)


def CheckIfWin(Card,Double):
    count=0
    shunzi=0
    SortCard=sorted(Card)
    for i in range(1,len(Card)+1):
        if SortCard[i]==SortCard[i+1]:
            count=count+1
    if count==1:
        for i in range(1,len(Card)+1):
            if SortCard[i]==SortCard[i+1]:
                SortCard.pop(i)
                SortCard.pop(i)
        for i in range(1,len(Double)+1):
            if SortCard[2+3*i]-SortCard[0+3*i]==2:
                shunzi=shunzi+1
        if shunzi==len(Double):
            return 1


def OutputCard(Card):
    SortCard=Card.sort()
    for i in range(1,len(Card)+1):
        if SortCard[i+2]-SortCard[i]!=2:
            if SortCard[i+1]-SortCard[i]!=1:
                if SortCard[i+1]-SortCard[i]!=2:
                    if (SortCard[i]%10)<3:
                        Card.remove(SortCard[i])

        
def main():
    Card=[]
    win=0
    Double=[]
    InputCard(Card)
    Check(Card,win,Double)
    while win==0:
        Check(Card,win)
        if len(Card)%3!=1:
            OutputCard(Card)
        if len(Card)%3!=1:
            OutputCard(Card)
        if len(Card)%3!=1:
            OutputCard(Card)
        if win==1:
            print("Congratulation! You are the winner")

main()
x效果图

把我的一手牌输进去之后,出现的就是这个报错的,原因不太明白。而且我也没有debug的心了。少小离家老大回。~~~~

报错提示如下,烦请路过大神指正指正:


第13只
28
抽牌吧,神奇的左手:23
Traceback (most recent call last):
  File "majiang.py", line 96, in <module>
    main()
  File "majiang.py", line 84, in main
    Check(Card,win,Double)
  File "majiang.py", line 7, in Check
    if CheckIfWin(Card,Double):
  File "majiang.py", line 55, in CheckIfWin
    if SortCard[i]==SortCard[i+1]:
TypeError: 'NoneType' object is not subscriptable

结束语

这次回家天天撸代码,突然觉得在家也很好,尤其是家里的网速特别给力,看超清的B站也丝毫不卡,十分给力。心塞,总算理解他们那些不愿意回学校的人了 T_T

学校的网速只是虚高而已啊!!!
猜猜我在看啥~~ ~~

好鸡儿舍不得。不过,刚刚把票改签到晚一点的时候了,可以后天再启程去宁乡了~ ~~ ~~

【铁路客服】订单E319XXXXXXXX,张照博您已签2月9日Z138次18车4号长沙16:19开。 有没有一辆车的呀?

个人宣言

知识传递力量,技术无国界,文化改变生活!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,456评论 5 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,370评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,337评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,583评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,596评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,572评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,936评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,595评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,850评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,601评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,685评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,371评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,951评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,934评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,167评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,636评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,411评论 2 342

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 171,397评论 25 707
  • http://python.jobbole.com/85231/ 关于专业技能写完项目接着写写一名3年工作经验的J...
    燕京博士阅读 7,545评论 1 118
  • C++调用python 在C/C++中嵌入Python,可以使用Python提供的强大功能,通过嵌入Python可...
    Bruce_Szh阅读 13,757评论 1 7
  • 还有不到三个小时,爱人又要踏上回京的火车。一夜,他有心事,我很疲惫(每一天到晚上就疲惫不堪),于是乎,快天亮时自己...
    漫漫无忧阅读 10,661评论 16 10
  • 170113@D10.感恩冥想 [Rose]佩诗 。感恩金刚智慧和慈悲伟大的格西老师 。感恩DCI老师的大爱及用心...
    AllisonSim阅读 157评论 0 0