• 个人简介

    你可以把这段程序放进thonny or python里试试:

    ##thonny:
    #from PIL import Image, ImageTk
    import tkinter as tk
    from tkinter import messagebox
    from tkinter import *
    from tkinter import ttk
    import random
    import time
    import sys
    from sys import exit
    import subprocess
    import pygame
    pygame.init()
    pygame.mixer.init()
    sj=0
    a=0
    b=0
    c=0
    ms=0
    fs={
        "1":"0",
        "2":"0",
        "3":"0",
        "4":"0",
        "5":"0",
        "6":"0",
        "7":"0"
        }
    dj={
        "1":"",
        "2":"",
        "3":"",
        "4":"",
        "5":"",
        "6":"",
        "7":""
        }
    dd={
        "1":"",
        "2":"",
        "3":"",
        "4":"",
        "5":"",
        "6":"",
        "7":""
        }
    j_driddles=[
        {"riddle": "什么话全世界都在用?(打一通讯方式)", "answer": "电话"},
        {"riddle": "双'mu'不成林", "answer": "相"},
        {"riddle": "上面一对竹,下面一撮毛(打古代文房四宝之一,两字)", "answer": "毛笔"},
        {"riddle": "字谜:存心不让出大门,你说烦人不烦人。猜一字", "answer": "闷"},
        {"riddle": "字谜:格外大方。猜一字", "answer": "回"},
        {"riddle": "十张口,一颗心。猜一字", "answer": "思"},
        {"riddle": "字谜:多一半,猜一字", "answer": "夕"},
        {"riddle": "爷爷打先锋。(打一数学家的名字)", "answer": "祖冲之"},
        {"riddle": "古时候的月亮(打一字)", "answer": "胡"},
        {"riddle": "二人一直在一起 (打一字)", "answer": "丛"},
        {"riddle": "分手(打一字)", "answer": "扮"},
        {"riddle": "一夜又一夜(打一字)", "answer": "多"},
        {"riddle": "一个人搬两个土(打一字)", "answer": "佳"},
        {"riddle": "一家十一口(打一字)", "answer": "吉"},
        {"riddle": "上气接下气", "answer": "乞"},
        {"riddle": "什么门不能有门栓?", "answer": "球门"},
        {"riddle": "一条腿,一排牙,个头不大作用大,每天回家都求他。(打一生活物)", "answer": "钥匙"},
        {"riddle": "小小东西妙无穷,茫茫大海逞英雄,红针遥指千里路,心心相印一线通。(打一工具)", "answer": "指南针"},
        {"riddle": "鲁迅诞辰100周年(打一成语)", "answer": "百年树人"},
        {"riddle": "一人挑两小人", "answer": "夹"},
        {"riddle": "一人", "answer": "大"},
        {"riddle": "字谜: 点点成金","answer": "全"},
        {"riddle": "一边是红,一边是绿,一边怕风,一边怕雨","answer": "秋"},
        {"riddle": "一字十三点,难在如何点","answer": "汁"},
        {"riddle": "七人头上长了草","answer": "花"},
        {"riddle": "九点","answer": "丸"},
        {"riddle": "字谜:日复一日","answer": "昌"},
        {"riddle": "字谜:半个人","answer": "伴"},
        {"riddle": "字谜:半个月亮","answer": "胖"},
        {"riddle": "田中,猜一字","answer": "十"},
        {"riddle": "旭日东升,猜一字","answer": "九"}
        ]
    p_triddles=[
        {"riddle": "半布春秋", "answer": "秦"},
        {"riddle": "孔子出游载月归 (打一字)", "answer": "甩"},
        {"riddle": "四方来合作,贡献大一点", "answer": "器"},
        {"riddle": "字谜:家中添一口", "answer": "豪"},
        {"riddle": "九只鸟, 猜一个字(猜一种动物名字,一个字)", "answer": "鸠"},
        {"riddle": "皇帝从不上早朝(古人的号)", "answer": "卧龙"},
        {"riddle": "字谜:一大二小,猜一个字", "answer": "奈"},
        {"riddle": "4个人搬个木头", "answer": "杰"},
        {"riddle": "有样东西真稀奇,生活生产不能离。要是你去乱碰它,它就对你不客气。(打一能源,一个字)", "answer": "电"},
        {"riddle": "字谜:一流水准", "answer": "淮"},
        {"riddle": "一来再来", "answer": "冉"},
        {"riddle": "一月七日,猜一个字", "answer": "脂"},
        {"riddle": "五十对耳朵(打一字)", "answer": "陌"},
        {"riddle": "一只黑狗,不叫不吼", "answer": "默"},
        {"riddle": "种花要除草,一人来一刀", "answer": "化"},
        {"riddle": "一只狗,两个口,谁遇它谁发愁", "answer": "哭"},
        {"riddle": "一个礼拜 ,猜一个字", "answer": "旨"},
        {"riddle": "1、2、3、4、5(成语)", "answer": "屈指可数"},
        {"riddle": "十张口,一颗心。猜一字", "answer": "思"},
        {"riddle": "差一点六斤。猜一字", "answer": "兵"},
        {"riddle": "自小在一起,目前少联系。猜一字", "answer": "省"},
        {"riddle": "字谜:水上工程","answer": "汞"},
        {"riddle": "付出爱心","answer": "受"},
        {"riddle": "字谜:兄有债","answer": "歌"},
        {"riddle": "正字少一横,不作止字猜,猜一个字","answer": "步"},
        {"riddle": "如箭在弦,猜一字","answer": "引"},
        {"riddle": "有心得志,猜一个字","answer": "士"},
        {"riddle": "有目共睹,猜一个字","answer": "者"},
        {"riddle": "有两个动物,一个在水里,一个在山上,猜一个字","answer": "鲜"},
        {"riddle": "综合门市","answer": "闹"},
        {"riddle": "守门员","answer": "闪"}
        ]
    k_nriddles=[
        {"riddle": "猜字谜:一笔天,一笔地,天地合,竟为一。", "answer": "二"},
        {"riddle": "猜字谜:青色米粒,却很神奇。狐狸吃它,变成妲己。", "answer": "精"},
        {"riddle": "猜字谜:一个字,只一笔。却像二,不像一。", "answer": "乙"},
        {"riddle": "猜字谜:月明时,田边至,小兽出,一身刺。", "answer": "猬"},
        {"riddle": "猜字谜:错一寸,说正确。错十分,还正确。", "answer": "对"},
        {"riddle": "猜字谜:左千人,右八人。共八千,零八人。", "answer": "秋"},
        {"riddle": "猜字谜:一个人,一堆火。四滴血,一行者。", "answer": "煮"},
        {"riddle": "猜字谜:四方院,一一到。张开口,吃元宵。", "answer": "园"},
        {"riddle": "猜字谜:木人巷,一身在。休要横,本人来。", "answer": "体"},
        {"riddle": "猜字谜:缸之后,有个洞。没有物,在其中。", "answer": "空"},
        {"riddle": "猜字谜:一加一,难琢磨。不算少,却为多。", "answer": "丰"},
        {"riddle": "猜字谜:猪八戒,来拱树。吃完枣,把它吐。", "answer": "核"},
        {"riddle": "猜字谜:一只鸟,一根木。说是树,不是树。", "answer": "术"},
        {"riddle": "猜字谜:刺丛卧,刀砍落。向下看,两圆果。", "answer": "枣"},
        {"riddle": "猜字谜:甜掉牙,因为啥?唐师傅,爆米花。", "answer": "糖"},
        {"riddle": "猜字谜:一根藤,一个瓜。一棵树,一朵花。", "answer": "卜"},
        {"riddle": "猜字谜:咬两口,泪水流。咬四口,泣声有。", "answer": "犬"},
        {"riddle": "猜字谜:十手指,一无力。拿东西,扔飞起。", "answer": "抛"},
        {"riddle": "猜字谜:画个它,充饥肠。一起吃,食一张。", "answer": "饼"},
        {"riddle": "猜字谜:若公子,半捂眼。似吻声,听得见。", "answer": "么"},
        {"riddle": "猜字谜:方院里,小儿睡。数一数,共两对。", "answer": "四"},
        {"riddle": "猜字谜:左有十八,右有十八,二四得八,一八得八","answer": "樊"},
        {"riddle": "猜字谜:一月亮,一太阳。猜明字,再想想。","answer": "胆"},
        {"riddle": "猜字谜:听妻说,共二月。其实有,一个月。","answer": "期"},
        {"riddle": "猜字谜:写两笔,一撇长。加一点,变宽广。","answer": "厂"},
        {"riddle": "猜字谜:冬天到,收萝卜。务出力,莫前卧。","answer": "处"},
        {"riddle": "猜字谜:一条蛇,三寸长。说它瘦,活得长。","answer": "寿"},
        {"riddle": "猜字谜:脱包围,前讨伐。汜水关,要夺下。","answer": "导"},
        {"riddle": "猜字谜:一分开,两月亮。一挪开,一月亮。","answer": "用"},
        {"riddle": "猜字谜:说是事,不是事。若说来,得试试。","answer": "式"},
        {"riddle": "猜字谜:一长水,缀残红。三飞鸟,隐前空。","answer": "江"}
        ]
    riddles = [
      
      
        # 添加更多的谜语和答案
    ]
    
    yykgms=1
    
    class RiddleGames:
        global sj
        global a
        global b
        global c
        global ms
        global riddles
        global j_driddles
        global p_triddles
        global k_nriddles
      
        sj=3
        a=7
        b=5
        c=2
        ms=1
        riddles=j_driddles
      
        def j_d(self):
            global sj
            global a
            global b
            global c
            global ms
            global riddles
            global j_driddles
            global p_triddles
            global k_nriddles
            self.jdButton.config(bg='red')
            self.ptButton.config(bg='white')
            self.knButton.config(bg='white')
            sj=3
            a=7
            b=5
            c=2
            ms=1
            riddles=j_driddles
            self.aaa="简单"
            self.l_abel.config(text="请选择模式({}):".format(self.aaa))
            file_path = '日志输出.txt'
            with open(file_path, mode='a', encoding='utf-8') as file:
                # 追加字符串
                text = str(self.aaa)+"\n"
                file.write(text)
      
        def p_t(self):
            global sj
            global a
            global b
            global c
            global ms
            global riddles
            global j_driddles
            global p_triddles
            global k_nriddles
            self.ptButton.config(bg='red')
            self.jdButton.config(bg='white')
            self.knButton.config(bg='white')
            sj=2
            a=6
            b=4
            c=2
            ms=2
            riddles=p_triddles
            self.aaa="普通"
            self.l_abel.config(text="请选择模式({}):".format(self.aaa))
            file_path = '日志输出.txt'
            with open(file_path, mode='a', encoding='utf-8') as file:
                # 追加字符串
                text = str(self.aaa)+"\n"
                file.write(text)
      
        def k_n(self):
            global sj
            global a
            global b
            global c
            global ms
            global riddles
            global j_driddles
            global p_triddles
            global k_nriddles
            self.knButton.config(bg='red')
            self.jdButton.config(bg='white')
            self.ptButton.config(bg='white')
            sj=1
            a=5
            b=3
            c=2
            ms=3
            riddles=k_nriddles
            self.aaa="困难"
            self.l_abel.config(text="请选择模式({}):".format(self.aaa))
            file_path = '日志输出.txt'
            with open(file_path, mode='a', encoding='utf-8') as file:
                # 追加字符串
                text = str(self.aaa)+"\n"
                file.write(text)
      
        def qd(self):
            rooot.destroy()
      
        def __init__(self,masters):
            self.masters = masters
            self.masters.title("模式选择")
            self.aaa="默认为简单"
      
            self.l_abel = tk.Label(self.masters, text="请选择模式({}):".format(self.aaa), font=('微软雅黑', 14))
            self.jdButton = tk.Button(self.masters, text="简单", command=self.j_d,bg='white')
            self.ptButton = tk.Button(self.masters, text="普通", command=self.p_t,bg='white')
            self.knButton = tk.Button(self.masters, text="困难", command=self.k_n,bg='white')
            self.qdButton = tk.Button(self.masters, text="确定", command=self.qd)
      
            self.l_abel.pack(pady=10)
            self.jdButton.pack(side='left',anchor=N,padx=10,pady=10)
            self.qdButton.pack(side='right',anchor=S,padx=10,pady=10)
            self.ptButton.pack(side='left',anchor=N,padx=10,pady=10)
            self.knButton.pack(side='left',anchor=N,padx=10,pady=10)
      
            rooot.protocol("WM_DELETE_WINDOW",self.closingflast)
            file_path = '日志输出.txt'
            with open(file_path, mode='a', encoding='utf-8') as file:
                # 追加字符串
                text = "正常"+"\n"
                file.write(text)
      
        def closingflast(self):
            pass
      
    rooot=tk.Tk()
    rooot.resizable(False, False)
    rooot.geometry("+300+300")
    game = RiddleGames(rooot)
    rooot.mainloop()
    
    xx=0
    
    class RiddleGame:
        global sj
        global a
        global b
        global c
        global ms
        global fs
        global dj
        global xx
        global yykgms
        global play_obj
        global wave_obj
      
        pygame.mixer.music.load("C:/Users/tyh/Desktop/猜谜游戏1.20.2/猜谜游戏1.20.2/背景音乐.WAV")
        pygame.mixer.music.play()
      
        def __init__(self, master):
            self.tg=[]
            self.sf=1
            self.master = master
            self.master.title("猜谜游戏1.20.2")
            self.riddleses=riddles
            self.ass=""
            self.ss=""
            self.cs=1
            self.master.resizable(False, False)
    
            self.score = 0
            self.time_left = 1
    
            self.riddle_label = tk.Label(self.master, text="", font=('微软雅黑', 14))
            self.riddle_label.pack(pady=10)
    
            self.answer_entry = tk.Entry(self.master, font=('微软雅黑', 14))
            self.answer_entry.pack(pady=10)
            self.answer_entry.bind('<Return>', self.check_answer)
    
            self.score_label = tk.Label(self.master, text="分数: 0", font=('Helvetica', 14))
            self.score_label.pack(pady=5)
    
            self.time_label = tk.Label(self.master, text="时间: 100秒", font=('微软雅黑', 14))
            self.time_label.pack(pady=5)
      
            self.time_label_tx = tk.Label(self.master, text="", font=('微软雅黑', 14),fg='red')
            self.time_label_tx.pack(pady=5)
      
            self.tksyts = tk.Label(self.master, text="题库剩余题数:30", font=('微软雅黑', 14),fg='green')
            self.tksyts.pack(pady=5)
    
            self.start_button = tk.Button(self.master, text="重新开始", command=self.start_game)
            self.start_button.pack(pady=10)
      
            self.tc = tk.Button(self.master, text="退出", command=self.eBtnClose)
            self.tc.pack(pady=10)
      
            self.zcd = tk.Menu(self.master)
      
            self.cd = tk.Menu(self.zcd, tearoff=0)
            self.cd.add_command(
                label='音乐:开', command=self.yykg)
      
            self.cd.add_command(
                label='标准', command=self.bz)
      
            self.cd.add_command(
                label='提示', command=self.ts)
      
            self.zcd.add_cascade(label='设置', menu=self.cd)
    
            self.master.config(menu=self.zcd)
    
            self.master.after(1000, self.countdown)
            self.next_riddle()
      
            root.protocol("WM_DELETE_WINDOW",self.closingflast)
            file_path = '日志输出.txt'
            with open(file_path, mode='a', encoding='utf-8') as file:
                # 追加字符串
                text = "正常"+"\n"
                file.write(text)
      
        def closingflast(self):
            pass
      
        def eBtnClose(self):
            root.destroy()
            file_path = '日志输出.txt'
            with open(file_path, mode='a', encoding='utf-8') as file:
                # 追加字符串
                text = "fmformesfen:用户手动跳出"+"\n"
                file.write(text)
            exit()
      
        def eBtnCloses(self):
            global xx
            global dd
            global dj
            global fs
            global play_obj
            play_obj.stop()
            xx=1
            root.destroy()
            class tjs:
                def dysc(self,n):
                    tj_max="E"
                    tj_max_z=[]
                    for i in range(1,8):
                        if(tj_max>n["{}".format(i)]):
                            tj_max=n["{}".format(i)]
                            tj_max_z=[]
                            tj_max_z.append("第"+str(i)+"小组")
                        elif(tj_max==n["{}".format(i)]):
                            tj_max_z.append("第"+str(i)+"小组")
                    file_path = '日志输出.txt'
                    with open(file_path, mode='a', encoding='utf-8') as file:
                        # 追加字符串
                        text = str(tj_max_z)+"\n"
                        file.write(text)
                    return tj_max_z
      
                def zhsc(self,n):
                    tj_min="A"
                    tj_min_z=[]
                    for i in range(1,8):
                        if(tj_min<n["{}".format(i)]):
                            tj_min=n["{}".format(i)]
                            tj_min_z=[]
                            tj_min_z.append("第"+str(i)+"小组")
                        elif(tj_min==n["{}".format(i)]):
                            tj_min_z.append("第"+str(i)+"小组")
                    file_path = '日志输出.txt'
                    with open(file_path, mode='a', encoding='utf-8') as file:
                        # 追加字符串
                        text = str(tj_min_z)+"\n"
                        file.write(text)
                    return tj_min_z
      
                def zxsc(self,n):
                    tj_zx_z=[]
                    for i in range(1,8):
                        zx_x=n["{}".format(i)]
                        if(zx_x=="自取"):
                            tj_zx_z.append(str(i))
                    file_path = '日志输出.txt'
                    with open(file_path, mode='a', encoding='utf-8') as file:
                        # 追加字符串
                        text = str(tj_zx_z)+"\n"
                        file.write(text)
                    return tj_zx_z
      
                def lqzdsc(self,n):
                    tj_lqzd_z=[]
                    for i in range(1,8):
                        lqzd_x=n["{}".format(i)]
                        if(lqzd_x=="领取指定"):
                            tj_lqzd_z.append(str(i))
                    file_path = '日志输出.txt'
                    with open(file_path, mode='a', encoding='utf-8') as file:
                        # 追加字符串
                        text = str(tj_lqzd_z)+"\n"
                        file.write(text)
                    return tj_lqzd_z
      
                def zj(self):
                    rot.destroy()
                    exit()
          
                def __init__(self,masters):
                    self.masters = masters
                    self.masters.title("统计")
          
                    self.dyf=','.join(self.dysc(dd))
                    self.zhf=','.join(self.zhsc(dd))
                    self.zxf='、'.join(self.zxsc(dj))
                    self.lqzdf='、'.join(self.lqzdsc(dj))
          
                    self.tj_label1 = tk.Label(self.masters, text="第1组得分:{},等第是{}".format(fs["1"],dd["1"]),font=('微软雅黑', 30))
                    self.tj_label2 = tk.Label(self.masters, text="第2组得分:{},等第是{}".format(fs["2"],dd["2"]),font=('微软雅黑', 30))
                    self.tj_label3 = tk.Label(self.masters, text="第3组得分:{},等第是{}".format(fs["3"],dd["3"]),font=('微软雅黑', 30))
                    self.tj_label4 = tk.Label(self.masters, text="第4组得分:{},等第是{}".format(fs["4"],dd["4"]),font=('微软雅黑', 30))
                    self.tj_label5 = tk.Label(self.masters, text="第5组得分:{},等第是{}".format(fs["5"],dd["5"]),font=('微软雅黑', 30))
                    self.tj_label6 = tk.Label(self.masters, text="第6组得分:{},等第是{}".format(fs["6"],dd["6"]),font=('微软雅黑', 30))
                    self.tj_label7 = tk.Label(self.masters, text="第7组得分:{},等第是{}".format(fs["7"],dd["7"]),font=('微软雅黑', 30))
                    self.qd_button = tk.Button(self.masters, text="          确定         ",width=20, command=self.zj,font=('微软雅黑', 30))
                    self.dy = tk.Label(self.masters,text="          第一名:{}".format(self.dyf),font=('微软雅黑', 20))
                    self.zh = tk.Label(self.masters,text="          最后一名:{}".format(self.zhf),font=('微软雅黑', 20))
                    self.zx = tk.Label(self.masters,text="          请{}组自选零食".format(self.zxf),font=('微软雅黑', 25))
                    self.lqzd = tk.Label(self.masters,text="          请{}组领取指定零食".format(self.lqzdf),font=('微软雅黑', 25))
    
                    self.tj_label1.grid(row = 0, column = 0)
                    self.tj_label2.grid(row = 1, column = 0)
                    self.tj_label3.grid(row = 2, column = 0)
                    self.tj_label4.grid(row = 3, column = 0)
                    self.tj_label5.grid(row = 4, column = 0)
                    self.tj_label6.grid(row = 5, column = 0)
                    self.tj_label7.grid(row = 6, column = 0)
                    self.qd_button.grid(row = 7, column = 0)
                    self.dy.grid(row = 0, column = 1)
                    self.zh.grid(row = 1, column = 1)
                    self.zx.grid(row = 2, column = 1)
                    self.lqzd.grid(row = 3, column = 1)
                    if(self.zhf=='第1小组,第2小组,第3小组,第4小组,第5小组,第6小组,第7小组'):
                        self.dy.config(text="")
                    if(self.lqzdf=='1、2、3、4、5、6、7'):
                        self.zx.config(text="")
          
                    rot.protocol("WM_DELETE_WINDOW",self.closingflast)
      
                def closingflast(self):
                    pass
          
            rot=tk.Tk()
            rot.resizable(False, False)
            game = tjs(rot)
            rot.mainloop()
      
        def next_riddle(self):
            global sj
            global a
            global b
            global c
            global ms
            self.d=0
            if self.time_left > 0:
                # 从数据库中随机选择一个谜语
                self.current_riddle = random.choice(self.riddleses)
                self.riddle_label.config(text=self.current_riddle["riddle"])
            for i in self.riddleses:
                self.d+=1
            if self.d==1:
                self.time_left=0
                if self.score>=a:
                    self.ass="A"
                elif self.score>=b:
                    self.ass="B"
                elif self.score>=c:
                    self.ass="C"
                else:
                    self.ass="D"
                self.riddle_label.config(text="谜语已用尽!游戏结束。你的等级是{}".format(self.ass))
                self.answer_entry.config(state='disabled')
                self.time_label.config(text="时间: {}秒".format(0))
                self.start_button.config(text="退出", command=self.eBtnClose)
                self.start_button.destroy()
            if self.d==0:
                root.destroy()
    
        def countdown(self):
            global sj
            global a
            global b
            global c
            global ms
            global fs
            global dj
            if self.time_left == 0 and self.d!=1:
                if self.score>=a:
                    self.ass="A"
                elif self.score>=b:
                    self.ass="B"
                elif self.score>=c:
                    self.ass="C"
                else:
                    self.ass="D"
                if ms==1:
                    if self.ass=="B" or self.ass=="C" or self.ass=="D":
                        self.ss="领取指定"
                    else:
                        self.ss="自取"
                elif ms==2:
                    if self.ass=="C" or self.ass=="D":
                        self.ss="领取指定"
                    else:
                        self.ss="自取"
                elif ms==3:
                    if self.ass=="D":
                        self.ss="领取指定"
                    else:
                        self.ss="自取"
      
                self.riddle_label.config(text="时间到!游戏结束。你的等级是{}".format(self.ass,self.ss))
                self.answer_entry.config(state='disabled')
                self.start_button.config(text="重新开始", command=self.reset_game)
                fs["{}".format(self.cs)]=self.score
                dj["{}".format(self.cs)]=self.ss
                dd["{}".format(self.cs)]=self.ass
            if self.time_left > 0 and self.d!=1:
                self.time_left -= 1
                self.time_label.config(text="时间: {}秒".format(self.time_left))
                if self.time_left <= 10:
                    if self.time_left == 0:
                        self.time_label_tx.config(text="".format(self.time_left))
                    else:
                        self.time_label_tx.config(text="警告:时间还剩{}秒".format(self.time_left))
                self.master.after(1000, self.countdown)
      
        def check_answer(self, event):
            global sj
            global a
            global b
            global c
            global ms
            global riddles
            def sus(a,b):
                global riddles
                j=0
                for i in b:
                    if i==a:
                        break
                    j+=1
                file_path = '删除题目.txt'
                with open(file_path, mode='a', encoding='utf-8') as file:
                    # 追加字符串
                    text = str(riddles[j])+"\n"
                    file.write(text)
          
            self.tksyts.config(text="题库剩余题数:{}".format(self.d-2))
            if(self.d<=5):
                self.tksyts.config(fg="red")
            else:
                self.tksyts.config(fg="green")
            user_answer = self.answer_entry.get().strip()
            correct_answer = self.current_riddle["answer"]
            if user_answer.lower() == correct_answer.lower():
                sus(self.current_riddle,riddles)
                self.score += random.randint(1,sj)
                self.score_label.config(text="分数: {}".format(self.score))
                tk.messagebox.showinfo('right', '恭喜你,猜对了,加分')
                riddles.remove(self.current_riddle)
            else:
                if user_answer.lower() == "":
                    tk.messagebox.showinfo('skip', '已经跳过')
                    self.tg.append(self.current_riddle)
                    riddles.remove(self.current_riddle)
                else:
                    sus(self.current_riddle,riddles)
                    tk.messagebox.showerror('error', '猜错了,正确答案是:{}'.format(self.current_riddle["answer"]))
                    riddles.remove(self.current_riddle)
            self.answer_entry.delete(0, 'end')
            self.next_riddle()
    
        def start_game(self):
            for i in self.tg:
                self.riddleses.append(i)
            self.tg=[]
            self.score = 0
            self.time_left = 100
            self.score_label.config(text="分数: 0")
            self.time_label.config(text="时间: 100秒")
            self.answer_entry.config(state='normal')
            self.next_riddle()
    
        def reset_game(self):
            global ms
            global riddles
            self.sms=ms
            self.riddleses=riddles
            for i in self.tg:
                self.riddleses.append(i)
            self.tg=[]
            self.score = 0
            self.time_left = 100
            self.lll()
            if self.cs>=7:
                self.eBtnCloses()
            else:
                self.msxz()
      
        def msxz123(self):
            global sj
            global a
            global b
            global c
            global ms
            global riddles
            global j_driddles
            global p_triddles
            global k_nriddles
            global xx
            class RiddleGames:
                global sj
                global a
                global b
                global c
                global ms
                global riddles
                global j_driddles
                global p_triddles
                global k_nriddles
                global xx
                sj=3
                a=7
                b=5
                c=2
                ms=1
                riddles=j_driddles
                def j_d(self):
                    global sj
                    global a
                    global b
                    global c
                    global ms
                    global riddles
                    global j_driddles
                    global p_triddles
                    global k_nriddles
                    global xx
                    self.jdButton.config(bg='red')
                    self.ptButton.config(bg='white')
                    self.knButton.config(bg='white')
                    sj=3
                    a=7
                    b=5
                    c=2
                    ms=1
                    riddles=j_driddles
                    self.aaa="简单"
                    self.l_abel.config(text="请选择模式({}):".format(self.aaa))
                def p_t(self):
                    global sj
                    global a
                    global b
                    global c
                    global ms
                    global riddles
                    global j_driddles
                    global p_triddles
                    global k_nriddles
                    global xx
                    self.ptButton.config(bg='red')
                    self.jdButton.config(bg='white')
                    self.knButton.config(bg='white')
                    sj=2
                    a=6
                    b=4
                    c=2
                    ms=2
                    riddles=p_triddles
                    self.aaa="普通"
                    self.l_abel.config(text="请选择模式({}):".format(self.aaa))
                def k_n(self):
                    global sj
                    global a
                    global b
                    global c
                    global ms
                    global riddles
                    global j_driddles
                    global p_triddles
                    global k_nriddles
                    global xx
                    self.knButton.config(bg='red')
                    self.jdButton.config(bg='white')
                    self.ptButton.config(bg='white')
                    sj=1
                    a=5
                    b=3
                    c=2
                    ms=3
                    riddles=k_nriddles
                    self.aaa="困难"
                    self.l_abel.config(text="请选择模式({}):".format(self.aaa))
                def qd(self):
                    global xx
                    xx=1
                    rooot.destroy()
                def __init__(self,masters):
                    self.masters = masters
                    self.masters.title("模式选择")
                    self.aaa="默认为简单"
          
                    self.l_abel = tk.Label(self.masters, text="请选择模式({}):".format(self.aaa), font=('微软雅黑', 14))
                    self.jdButton = tk.Button(self.masters, text="简单", command=self.j_d,bg='white')
                    self.ptButton = tk.Button(self.masters, text="普通", command=self.p_t,bg='white')
                    self.knButton = tk.Button(self.masters, text="困难", command=self.k_n,bg='white')
                    self.qdButton = tk.Button(self.masters, text="确定", command=self.qd)
      
                    self.l_abel.pack(pady=10)
                    self.jdButton.pack(side='left',anchor=N,padx=10,pady=10)
                    self.qdButton.pack(side='right',anchor=S,padx=10,pady=10)
                    self.ptButton.pack(side='left',anchor=N,padx=10,pady=10)
                    self.knButton.pack(side='left',anchor=N,padx=10,pady=10)
          
                    rooot.protocol("WM_DELETE_WINDOW",self.closingflast)
                    file_path = '日志输出.txt'
                    with open(file_path, mode='a', encoding='utf-8') as file:
                        # 追加字符串
                        text = "正常"+"\n"
                        file.write(text)
      
                def closingflast(self):
                    pass
          
            rooot=tk.Tk()
            rooot.resizable(False, False)
            rooot.geometry("+300+300")
            game = RiddleGames(rooot)
            rooot.mainloop()
      
        def msxz(self):
            self.msxz1()
      
        def msxz1(self):
            global xx
            global riddles
            while(1):
                if xx==0:
                    self.msxz12()
                else:
                    break
            if xx==1:
                xx=0
                self.cs+=1
                self.score_label.config(text="分数: 0")
                self.time_label.config(text="时间: 100秒")
                self.answer_entry.config(state='normal')
                self.next_riddle()
                self.master.after(1000, self.countdown)
                self.sf=1
                file_path = '日志输出.txt'
                with open(file_path, mode='a', encoding='utf-8') as file:
                    # 追加字符串
                    text = "正常"+"\n"
                    file.write(text)
      
        def msxz12(self):
            self.msxz123()
      
        def lll(self):
            global ms
            global riddles
            global j_driddles
            global p_triddles
            global k_nriddles
            if ms==1:
                j_driddles=riddles
            elif ms==2:
                p_triddles=riddles
            elif ms==3:
                k_nriddles=riddles
      
        def yykg(self):
            global yykgms
            if(yykgms==1):
                self.yykgg("关")
                yykgms=0
                pygame.mixer.music.pause()
            else:
                self.yykgg("开")
                yykgms=1
                pygame.mixer.music.unpause()
      
        def yykgk(self,yyms):
            self.cd.entryconfig(0, label='音乐:{}'.format(yyms))
      
        def yykgg(self,yyms):
            self.cd.entryconfig(0, label='音乐:{}'.format(yyms))
      
        def bz(self):
            self.delete_all_widgets_bz(self.master)
      
        def ts(self):
            self.delete_all_widgets_ts(self.master)
      
        def delete_all_widgets_bz(self,master):
            # 逐个删除所有子部件
            for widget in self.master.winfo_children():
                widget.destroy()
            self.tg=[]
            self.sf=1
            self.master = master
            self.master.title("猜谜游戏1.20.2")
            self.riddleses=riddles
            self.ass=""
            self.ss=""
            self.cs=1
            self.master.resizable(False, False)
    
            self.score = 0
            self.time_left = 1
    
            self.riddle_label = tk.Label(self.master, text="", font=('微软雅黑', 14))
            self.riddle_label.pack(pady=10)
    
            self.answer_entry = tk.Entry(self.master, font=('微软雅黑', 14))
            self.answer_entry.pack(pady=10)
            self.answer_entry.bind('<Return>', self.check_answer)
    
            self.score_label = tk.Label(self.master, text="分数: 0", font=('Helvetica', 14))
            self.score_label.pack(pady=5)
    
            self.time_label = tk.Label(self.master, text="时间: 100秒", font=('微软雅黑', 14))
            self.time_label.pack(pady=5)
      
            self.time_label_tx = tk.Label(self.master, text="", font=('微软雅黑', 14),fg='red')
            self.time_label_tx.pack(pady=5)
      
            self.tksyts = tk.Label(self.master, text="题库剩余题数:30", font=('微软雅黑', 14),fg='green')
            self.tksyts.pack(pady=5)
    
            self.start_button = tk.Button(self.master, text="重新开始", command=self.start_game)
            self.start_button.pack(pady=10)
      
            self.tc = tk.Button(self.master, text="退出", command=self.eBtnClose)
            self.tc.pack(pady=10)
      
            self.zcd = tk.Menu(self.master)
      
            self.cd = tk.Menu(self.zcd, tearoff=0)
            self.cd.add_command(
                label='音乐:开', command=self.yykg)
      
            self.cd.add_command(
                label='标准', command=self.bz)
      
            self.cd.add_command(
                label='提示', command=self.ts)
      
            self.zcd.add_cascade(label='设置', menu=self.cd)
    
            self.master.config(menu=self.zcd)
    
            self.master.after(1000, self.countdown)
            self.next_riddle()
      
            root.protocol("WM_DELETE_WINDOW",self.closingflast)
            file_path = '日志输出.txt'
            with open(file_path, mode='a', encoding='utf-8') as file:
                # 追加字符串
                text = "正常"+"\n"
                file.write(text)
      
        def delete_all_widgets_ts(self,master):
            # 逐个删除所有子部件
            for widget in self.master.winfo_children():
                widget.destroy()
            self.tg=[]
            self.sf=1
            self.master = master
            self.master.title("猜谜游戏1.20.2")
            self.riddleses=riddles
            self.ass=""
            self.ss=""
            self.cs=1
            self.master.resizable(False, False)
    
            self.score = 0
            self.time_left = 1
    
            self.riddle_label = tk.Label(self.master, text="", font=('微软雅黑', 14))
            self.riddle_label.pack(pady=10)
    
            self.answer_entry = tk.Entry(self.master, font=('微软雅黑', 14))
            self.answer_entry.pack(pady=10)
            self.answer_entry.bind('<Return>', self.check_answer)
    
            self.score_label = tk.Label(self.master, text="分数: 0", font=('Helvetica', 14))
            self.score_label.pack(pady=5)
    
            self.time_label = tk.Label(self.master, text="时间: 100秒", font=('微软雅黑', 14))
            self.time_label.pack(pady=5)
      
            self.time_label_tx = tk.Label(self.master, text="", font=('微软雅黑', 14),fg='red')
            self.time_label_tx.pack(pady=5)
      
            self.tksyts = tk.Label(self.master, text="题库剩余题数:30", font=('微软雅黑', 14),fg='green')
            self.tksyts.pack(pady=5)
    
            self.start_button = tk.Button(self.master, text="重新开始", command=self.start_game)
            self.start_button.pack(pady=10)
      
            self.ts_button = tk.Button(self.master, text="提示", command=self.ts_ts)
            self.ts_button.pack(pady=10)
      
            self.tc = tk.Button(self.master, text="退出", command=self.eBtnClose)
            self.tc.pack(pady=10)
      
            self.zcd = tk.Menu(self.master)
      
            self.cd = tk.Menu(self.zcd, tearoff=0)
            self.cd.add_command(
                label='音乐:开', command=self.yykg)
      
            self.cd.add_command(
                label='标准', command=self.bz)
      
            self.cd.add_command(
                label='提示', command=self.ts)
      
            self.zcd.add_cascade(label='设置', menu=self.cd)
    
            self.master.config(menu=self.zcd)
    
            self.master.after(1000, self.countdown)
            self.next_riddle()
      
            root.protocol("WM_DELETE_WINDOW",self.closingflast)
            file_path = '日志输出.txt'
            with open(file_path, mode='a', encoding='utf-8') as file:
                # 追加字符串
                text = "正常"+"\n"
                file.write(text)
      
        def ts_ts(self):
            pass
      
    # 创建Tkinter窗口
    root = tk.Tk()
    root.geometry("+300+300")
    game = RiddleGame(root)
    root.mainloop()
    
    

    你读过《三体》吗?

    那你一定对这段C++代码的运行效果很熟悉:

    #include<bits/stdc++.h>
    #include<iostream>
    using namespace std;
    
    int main()
    {
    	char strings[1000000]={0};
    	while(1)
    	{
    		cout<<"C:> ";
    		gets(strings);
    		puts(strings);
    	}
    	return 0;
    }
    
  • 通过的题目

  • 最近活动

    This person is lazy and didn't join any contests or homework.
  • 最近编写的题解

题目标签

一本通编程启蒙
150
系统测试
1