百摩网
当前位置: 首页 生活百科

我们来聊聊成语接龙(成语接龙敢玩嘛)

时间:2023-07-10 作者: 小编 阅读量: 1 栏目名: 生活百科

成语接龙敢玩嘛导语"胸藏文墨怀如谷,腹有诗书气自华"——《和董传留别》成语接龙是中华民族传统的文字游戏它历史悠久,是传统文字、文化、文明的一个缩影,也是老少皆宜的民间文化娱乐活动​成语接龙:"。

我们来聊聊成语接龙?"胸藏文墨怀如谷,腹有诗书气自华" ——《和董传留别》,今天小编就来说说关于我们来聊聊成语接龙?下面更多详细答案一起来看看吧!

我们来聊聊成语接龙

导语

"胸藏文墨怀如谷,腹有诗书气自华"。 ——《和董传留别》

成语接龙是中华民族传统的文字游戏。

它历史悠久,是传统文字、文化、文明的一个缩影,也是老少皆宜的民间文化娱乐活动。

成语接龙:"龙腾虎跃,该你了!" 什么?你立刻接上了「跃马弯弓」?

确认过眼神,是高手没错了。 Hi~我是木木子,又见面了哇! 今天我带来了新技能解锁,没错,就是:

「成语接龙」

据说,跟我玩游戏的朋友偷偷作弊,拿了本《现代汉语词典》要跟我大战三百回合。

最后发现,我说的每个成语她都忍不住要去查一下啊哈哈哈!!!小编乱入:我的天呐,奇怪得知

是成倍增长了!

​​

认怂? 我会认怂吗?! 不存在的.

看我写一款成语接龙小程序,分分钟秒杀你~快来和我「成语接龙」吧~

正文

在这款成语接龙小游戏中,你会学到一些「新成语」,能边玩儿边学成语,最重要的还是能接触一款

编程,在玩儿中进步学习,成就感满满,又能学知识,你有闲暇时,跟隔壁老王可以一直玩一直玩哈

哈哈~

1) 游戏规则

下面我简单说说「成语接龙」游戏的基本规则,你很熟悉可以跳过这段,不熟悉就仔细看看:

①用四字成语的最后一个字起头,接出下一句成语,由此不断延伸;

②成语尾首相接的字,可以是同一个字,也可以是同音的字;

③一场游戏中,不应出现重复成语。

【举例】「海枯石烂」→「烂醉如泥」→「泥牛入海」×不能接「海枯石烂」(出现重复)√可以接「海纳百川」

是不是超级简单?考验词汇储备量的时候到了~

2) 正式敲代码2.1 模块导入

import osimport sysimport randomfrom PyQt5.QtGui import *from PyQt5.QtWidgets import *

2.2 读取txt数据

self.idiom_data, self.valid_idioms = self.readData('data/data.txt') self.ai_answer = None

2.3 界面设置

self.setWindowTitle('成语接龙小程序-就差你了!')self.setWindowIcon(QIcon('data/02.png'))self.setFixedSize(600, 200)self.user_input_label = QLabel('我方:')self.user_input_edit = QLineEdit()self.user_input_button = QPushButton('确定')self.ai_input_label = QLabel('电脑方:')self.ai_input_edit = QLineEdit()self.restart_button = QPushButton('重新开始')self.user_explain_label = QLabel('我方成语释义:')self.user_explain_edit = QLineEdit()self.ai_explain_label = QLabel('电脑方成语释义:')self.ai_explain_edit = QLineEdit()# 布局self.grid = QGridLayout()self.grid.setSpacing(12)self.grid.addWidget(self.user_input_label, 0, 0)self.grid.addWidget(self.user_input_edit, 0, 1)self.grid.addWidget(self.user_input_button, 0, 2)self.grid.addWidget(self.user_explain_label, 1, 0)self.grid.addWidget(self.user_explain_edit, 1, 1, 1, 2)self.grid.addWidget(self.ai_input_label, 2, 0)self.grid.addWidget(self.ai_input_edit, 2, 1)self.grid.addWidget(self.restart_button, 2, 2)self.grid.addWidget(self.ai_explain_label, 3, 0)self.grid.addWidget(self.ai_explain_edit, 3, 1, 1, 2)self.setLayout(self.grid)# 按键绑定self.user_input_button.clicked.connect(self.airound)self.restart_button.clicked.connect(self.restart)

2.4 电脑接龙

def airound(self):idiom = self.user_input_edit.text()idiom = idiom.strip()if (not self.isvalid(idiom)) or (self.ai_answer and idiom[0] != self.ai_answer[0][-1]):QMessageBox.warning(self, '成语输入错误', '你输入的成语不对哦, 不可以耍小聪明哒!', QMessageBox.Yes | QMessageBox.No)else:self.user_explain_edit.setText('读音: %s; 含义: %s' % (self.valid_idioms[idiom][0], self.valid_idioms[idiom][1]))if idiom[-1] in self.idiom_data:answers = self.idiom_data[idiom[-1]]answer = random.choice(answers)self.ai_answer = answer.copy()self.ai_input_edit.setText(self.ai_answer[0])self.ai_explain_edit.setText('读音: %s; 含义: %s' % (self.valid_idioms[answer[0]][0], self.valid_idioms[answer[0]][1]))else:QMessageBox.information(self, '你赢啦', '电脑都接不上你的成语, 你太厉害啦!', QMessageBox.Yes | QMessageBox.No)

2.5 重新开始新游戏

def restart(self):self.ai_answer = Noneself.ai_input_edit.clear()self.ai_explain_edit.clear()self.user_input_edit.clear()self.user_explain_edit.clear()

2.6 成语是否合法

def isvalid(self, idiom):return (idiom in self.valid_idioms)

2.7 读取成语的数据

def readData(self, filepath):fp = open(filepath, 'r', encoding='utf-8')idiom_data = {}valid_idioms = {}for line in fp.readlines():line = line.strip()if not line: continueitem = line.split('\t')if len(item) != 3: continueif item[0][0] not in idiom_data:idiom_data[item[0][0]] = [item]else:idiom_data[item[0][0]].append(item)valid_idioms[item[0]] = item[1:]return idiom_data, valid_idioms

2.8 附完整的项目源码

'''小程序名:成语接龙源码基地见'''import osimport sysimport randomfrom PyQt5.QtGui import *from PyQt5.QtWidgets import *'''成语接龙'''class IdiomSolitaire(QWidget):def __init__(self, parent=None, **kwargs):super(IdiomSolitaire, self).__init__(parent)# 读取数据self.idiom_data, self.valid_idioms = self.readData('data/data.txt')self.ai_answer = None# 定义界面self.setWindowTitle('成语接龙小程序-就差你了!')self.setWindowIcon(QIcon('data/02.png'))self.setFixedSize(600, 200)self.user_input_label = QLabel('我方:')self.user_input_edit = QLineEdit()self.user_input_button = QPushButton('确定')self.ai_input_label = QLabel('电脑方:')self.ai_input_edit = QLineEdit()self.restart_button = QPushButton('重新开始')self.user_explain_label = QLabel('我方成语释义:')self.user_explain_edit = QLineEdit()self.ai_explain_label = QLabel('电脑方成语释义:')self.ai_explain_edit = QLineEdit()# 布局self.grid = QGridLayout()self.grid.setSpacing(12)self.grid.addWidget(self.user_input_label, 0, 0)self.grid.addWidget(self.user_input_edit, 0, 1)self.grid.addWidget(self.user_input_button, 0, 2)self.grid.addWidget(self.user_explain_label, 1, 0)self.grid.addWidget(self.user_explain_edit, 1, 1, 1, 2)self.grid.addWidget(self.ai_input_label, 2, 0)self.grid.addWidget(self.ai_input_edit, 2, 1)self.grid.addWidget(self.restart_button, 2, 2)self.grid.addWidget(self.ai_explain_label, 3, 0)self.grid.addWidget(self.ai_explain_edit, 3, 1, 1, 2)self.setLayout(self.grid)# 按键绑定self.user_input_button.clicked.connect(self.airound)self.restart_button.clicked.connect(self.restart)'''电脑接龙'''def airound(self):idiom = self.user_input_edit.text()idiom = idiom.strip()if (not self.isvalid(idiom)) or (self.ai_answer and idiom[0] != self.ai_answer[0][-1]):QMessageBox.warning(self, '成语输入错误', '你输入的成语不对哦, 不可以耍小聪明哒!', QMessageBox.Yes | QMessageBox.No)else:self.user_explain_edit.setText('读音: %s; 含义: %s' % (self.valid_idioms[idiom][0], self.valid_idioms[idiom][1]))if idiom[-1] in self.idiom_data:answers = self.idiom_data[idiom[-1]]answer = random.choice(answers)self.ai_answer = answer.copy()self.ai_input_edit.setText(self.ai_answer[0])self.ai_explain_edit.setText('读音: %s; 含义: %s' % (self.valid_idioms[answer[0]][0], self.valid_idioms[answer[0]][1]))else:QMessageBox.information(self, '你赢啦', '电脑都接不上你的成语, 你太厉害啦!', QMessageBox.Yes | QMessageBox.No)'''重新开始'''def restart(self):self.ai_answer = Noneself.ai_input_edit.clear()self.ai_explain_edit.clear()self.user_input_edit.clear()self.user_explain_edit.clear()'''检测成语是否合法'''def isvalid(self, idiom):return (idiom in self.valid_idioms)'''读取成语数据'''def readData(self, filepath):fp = open(filepath, 'r', encoding='utf-8')idiom_data = {}valid_idioms = {}for line in fp.readlines():line = line.strip()if not line: continueitem = line.split('\t')if len(item) != 3: continueif item[0][0] not in idiom_data:idiom_data[item[0][0]] = [item]else:idiom_data[item[0][0]].append(item)valid_idioms[item[0]] = item[1:]return idiom_data, valid_idioms'''run'''if __name__ == '__main__':app = QApplication(sys.argv)client = IdiomSolitaire()client.show()sys.exit(app.exec_())

3) 效果展示3.1 成语:龙腾虎跃 Part 1效果

​3.2 成语:山清水秀 Part 2效果

​总结

成语接龙小测试:看看大家的成语量词汇是不是够多吖~哈哈哈 大家顺着上一位地接下去,看接到几楼呀?!文章汇总里面更多类型的游戏等你来学习哈~

⛳完整的免费源码领取处:

如需完整的项目源码 素材源码基地见:#私信小编06#即可获取免费的福利!

你们的支持是我最大的动力!!记得三连哦~mua 欢迎大家阅读往期的文章哦~

文章汇总——

Python—2021 |已有文章汇总 | 持续更新,直接看这篇就够了~

    推荐阅读
  • 五星钻豹电动车代理商(五星钻豹电动车看产品天津篇)

    更为五星钻豹的网络销售新纪元提供了可能。杨总介绍到,天津简易款产品由于受到疫情影响,新品上市延后,因此4月份会将3月和4月的新品集中发布,共计有12款新品。03第三款新品是X1作为天津第一款骨架电动自行车款产品,采用了U型设计语言,后衣架分开。05第五款新品是酷客酷客是天津首款下了轻摩证书的产品。在疫情影响之下,线下的新品发布会成为“难题”。

  • 梦见做家务是什么预兆(梦见做家务的寓意)

    梦见做家务是什么预兆女人梦见做家务,预示着你近期将会嫁给自己心爱的人,成为一个全职太太,能够十分贤惠的把一切家庭事务都打理的很好,让自己的丈夫全心全意的工作。小孩儿梦见做家务,预示着你与家中的关系将会很融洽,能够和自己的父母长辈相处的很好,不会有什么代沟。病人梦见做家务,预示着你的病情将会得到缓解,只要安心的治疗,很快就能够痊愈,而且比以前更加健康。

  • 素汤的做法大全(素汤的做法大全有哪些)

    素汤的做法大全无花果木瓜素汤玉米一条,红萝卜一条,木瓜一个,花生、腰果、莲子各半两左右,无花果干4粒,雪耳小半朵。将熬好的西红柿酱倒入砂锅中,加入生姜和大量的水。将准备好的食材全部倒入砂锅中,大火烧开后,调至中小火,盖上锅盖煲1小时。白蟹味菇和灰蟹味菇洗净,用淡盐水浸泡10分钟后沥水备用。锅里放油爆香姜末,轻炒杏鲍菇,加入双色蟹味菇。

  • 全麦馒头的热量(了解一下)

    下面更多详细答案一起来看看吧!全麦馒头的热量全麦馒头热量:246大卡/100g。现代人的饮食一般都是精米精面,而全麦面粉是整粒小麦在磨粉时,仅仅经过碾碎,而不经过除去麸皮程序,整粒小麦包含了麸皮与胚芽全部磨成粉。小麦中的麸皮含有营养价值极高的纤维素,经常食用,可使人体保持健康而有活力,对身体极有益处。

  • 渭南北站最新客运时刻表(渭南各客运站发车班次表)

    渭南客运中心站发车时刻表1、渭南-西安火车站6:30-18:50每25-30分钟一班高速2、渭南-西安城南9:20、11:20、14:20、17:10高速3、渭南-富平7:20、8:20-18:3035分钟左右一班4、渭南-洛川13:00每日一班5、渭南-旬邑7:00每日一班6、渭南-咸阳9:30、14:007、渭南-彬县8:30、14:10每日两班8、渭南-运城9:30每日一班高速9、渭南-镇巴

  • 外国都用什么汽车脚垫(为什么欧美没有大包围汽车脚垫)

    丰田在2009年曾在北美发生过一次召回事件,由于标配脚垫过大了一点,导致一起严重交通事故,最终召回替换了所有汽车的脚垫,并修改了油门设计。3W全TPE脚垫采用专车定制开模,贴合度高,并且使用原车卡扣位固定,不会滑动。而TPE材料常应用于医疗器械,婴童用品,健身器材,成人用品等领域,是可直接与人体接触的环保材料。即使中国消费者认可这种脚垫了,最少也得需要三五年以上才能产生收益。

  • 骑马与砍杀2好看的npc(骑马与砍杀2NPC属性一览表)

    《骑马与砍杀2》游戏中玩家能够招募一些NPC,而玩家们的队伍可招募的NPC是有上限的,我们在找NPC时需要了解他们的属性和能力,寻找更适合自己的NPC!特此小七带来了骑马与砍杀吧玩家真宇哥哥分享的图片。就一张大图,大家可以收藏哦~

  • 踩高跷是什么地方的风俗(踩高跷属于什么民族的风俗呢)

    踩高跷是汉族的风俗踩高跷俗称缚柴脚,亦称“高跷”“踏高跷”“扎高脚”“走高腿”,是我国北方民间盛行的一种群众性技艺表演,多在一些民间节日里由舞蹈者脚上绑着逗,武跷则强调个人技巧与绝招,各地高跷,都已形成鲜明的地域风格与民族色彩踩高跷的角色,因为各自身份不同,所以造型各异、高低不一,接下来我们就来聊聊关于踩高跷是什么地方的风俗?踩高跷是什么地方的风俗踩高跷是汉族的风俗。

  • 梦见许多鱼有什么征兆(梦见许多鱼的含义)

    以下内容希望对你有帮助!梦见许多鱼有什么征兆梦见许多鱼有什么征兆,得此梦五行主水,是在事业中你与他人的相处多,有贵人相助,则对你事业多具有好运,求财顺利。求财之人得此梦,往北吉利,往南走不吉利,事业中与他人的相处更为圆滑,且不可做事有针锋相对,则对你事业发展不利。

  • 海南正在奋力书写的这份答卷(在星辰大海书写发展答卷)

    2016年6月25日,长征七号运载火箭在文昌航天发射场成功首飞。文昌牢牢抓住“航天机遇”,围绕航天展开的旅游、餐饮、研学等多种业态加速聚集。发射前后,文昌的许多民宿、酒店“一房难求”。目前,文昌正抓紧推进商业航天发射场规划,并与西昌卫星发射中心签署航天文化旅游合作协议,初步明确航天旅游的参观区域和旅游路线。