1、概述

在python开发中要熟练字符串、列表、元组、字典等多种数据类型的使用,本文通过实现简单的成语接龙,来巩固python中的基础功能。

2、处理语料

我们可以从互联网上下载成语大全等语料,建议建议对语料进行处理和清洗之后读取到列表(list)中。请参考下面代码:

# 读取数据

file = open('data/ChengYu.txt','r',encoding='gbk')

line = file.readline()

data = []

while line:

singledata = ''.join(line.split()).split('/')[0]

data.append(singledata)

line = file.readline()

file.close()

print('done')

可以检测一下存储的成语状态,请参考如下代码:

print(data[0:10])

输出结果如下图所示:

3、基本技巧

如果要实现成语接龙的游戏,必须要获取以某一指定汉字开头和某一汉字结尾的成语。

如下代码,筛选出了所有以”一“这个汉字开头的成语。

start_data = [w for w in data if w.startswith('一')]

print(start_data)

输出结果如下图所示:

下面就可以从这些成语中抽取一个作为备选,请参考如下代码:

import random

current_word=start_data[random.randint(0,len(start_data)-1)]

print(current_word)

输出结果如下图所示:

下面取得这个字符的尾字母,请参考如下代码:

end_char = current_word[-1]

print(end_char)

输出结果如下图所示:

然后再以这个汉字为字头抽取成语,在抽取过程中注意过滤已经出现的成语、发现无法找到下一个成语应该退出循环防止程序出错。

python成语接龙到为所欲为_python成语接龙相关推荐

  1. python成语接龙到为所欲为_Python小伙用简单爬虫实现成语接龙小游戏!

    闲来无事,写了一个成语接龙小游戏,抓取某成语接龙网站内容,请大家指正. Python实现这个功能非常简单,当然,这里我也是写了个简单版的,实现了基本功能就好.话不多说,先上干货: 开发前准备及思路: ...

  2. python成语接龙到为所欲为_成语接龙,如何在“为所欲为、人无完人、数不胜数、精益求精、痛定思痛……”之间以最短路径循环与自循环?...

    [('为所欲为', '为德不终', '终身大事', '事在人为'), ('为所欲为', '为法自弊', '弊绝风清', '清净无为'), ('为所欲为', '为法自弊', '弊绝风清', '清静无为' ...

  3. python成语接龙到为所欲为_ParisGabriel:Python全栈工程师(0基础到精通)教程 第十八课(递归函数、闭包)...

    ParisGabriel 每天坚持手写  一天一篇  决定坚持几年 全栈工程师 Python人工智能从入门到精通 函数式编程: 是指用一系列函数解决问题 每一个函数完成细小的功能,一系列函数的任意组合 ...

  4. python成语接龙代码_实现成语接龙(Python)

    目录 前言 要实现的规则如下:根据接龙的成语的第一个字与前一个成语结尾的字的比较,分一下三种模式模式1:字相同拼音也要相同 模式2:字相同拼音不要求相同 模式3:字不要相同拼音要求相同,即谐音就可以接 ...

  5. 成语json_人工智能测试爬百度成语测成语接龙

    点击关注,我们共同每天进步一点点! 前言 本意,昨晚想发一文,在梳理思路找笔记一小半时,一朋友跟伴侣吵架了,突然从技术写文转变到情感"砖家",微信聊了一个多小时,脑力都用光了,早上 ...

  6. C语言接龙,C语言完成成语接龙小游戏

    用C语言实现成语接龙小游戏(新手上路,大神勿喷) 1.首先需要找到一个成语库(从网上下载即可,保存为.txt文件) 2.整体思路如下 由于要用的成语保存在文件里,一边用一边读取会降低代码的效率,所以我 ...

  7. 8个成语接龙首尾相连_1500个成语接龙!首尾相连,连绵不绝

    在小学语文的学习当中,词汇量的累积是一个重要的学习内容.其中,学好成语是小学生必须掌握的内容之一. 但是大部分同学都感叹成语难学,因为成语简洁精练,如果孩子语文基础不好,可能了解不了某些成语德 意思. ...

  8. Python GUI案例之看图猜成语开发(第三篇)

    Python GUI案例之看图猜成语(第三篇) 前言 看图猜成语小程序开发(第三篇) 游戏闯关模式页面 Python GUI案例之看图猜成语开发(第一篇) Python GUI案例之看图猜成语开发(第 ...

  9. Python GUI案例之看图猜成语开发(第二篇)

    Python GUI案例之看图猜成语(第二篇) 前言 看图猜成语小程序开发(第二篇) 游戏选择模式页面 游戏训练模式页面 Python GUI案例之看图猜成语开发(第一篇) Python GUI案例之 ...

最新文章

  1. Selenium 2.0的由来及设计架构(三)
  2. idea使用lombok不生效的解决办法
  3. Windows 7的使用技巧或功能经典20条
  4. oracle nvachar 长度,Oracle中varchar、varchar2和nvarchar、nvarchar2
  5. JS中给一个对象动态追加key
  6. 岛屿类-网格类问题-DFS | 力扣200. 岛屿数量
  7. Emacs之LaTeX环境配置及效果展示
  8. 安装flex碰到的一个问题及其解决方法(原创)
  9. github常见操作和常见错误!
  10. electronic-wechat高分屏下的缩放修改
  11. c #include如何找到文件_使用 MATLAB Function 模块集成 C 代码
  12. Tomcat部分目录作用
  13. git可视化工具小乌龟安装
  14. Matplotlib可视化数据分析图表下(常用图表的绘制、折线图、柱形图、直方图、饼形图、散点图、面积图、热力图、箱形图、3D图表、绘制多个图表、双y轴可视化图表、颜色渐变图)
  15. imagenet2012 label
  16. 下载速度MB/s与Mb/s的区别
  17. 当电脑打开显示每日新闻联播主要内容
  18. 灰度共生矩阵(GLCM)并计算能量、熵、惯性矩、相关性(matlab)(待总结)
  19. VMware 虚拟机系统 与 win10 共享文件夹问题的解决
  20. Liunx-centos8入门+配置网络

热门文章

  1. 10 公众号开发 - 关注/取消关注事件
  2. ORA-3136 问题处理
  3. WHM系列:WHM数据迁移(WHM→WHM)
  4. lib60870-IEC 60870-5-101 / 104 C源代码库用户指南-版本2.3.0--第一部分
  5. android 时间水印相机,时间水印相机
  6. python ----Parser使用
  7. pycharm preparing workspace 项目打不开怎么办?
  8. 深度学习项目训练时突然卡住或崩盘问题
  9. P1567 统计天数(C语言)
  10. 计算天数c语言实验报告,c语言实例--计算天数