22行Python代码实现 单词纠错

http://norvig.com/spell-correct.html

基本原理就是概率统计,亮点是Python的各种特性作者用得出神入化,尤其是获取与word相距编辑距离为2的所有单词,先找出与word编辑距离为2的单词列表list,再找出list[i]对应的编辑距离为2的单词,这就是word编辑距离为2的单词。这个过程中列表生成器中又嵌套了一个生成器。

时间: 2024-11-13 08:03:08

22行Python代码实现 单词纠错的相关文章

10 行 Python 代码实现模糊查询/智能提示

10 行 Python 代码实现模糊查询/智能提示 1.导语: 模糊匹配可以算是现代编辑器(如 Eclipse 等各种 IDE)的一个必备特性了,它所做的就是根据用户输入的部分内容,猜测用户想要的文件名,并提供一个推荐列表供用户选择. 样例如下: Vim (Ctrl-P) Sublime Text (Cmd-P) '模糊匹配'这是一个极为有用的特性,同时也非常易于实现. 2.问题分析: 我们有一堆字符串(文件名)集合,我们根据用户的输入不断进行过滤,用户的输入可能是字符串的一部分.我们就以下面的

200行Python代码实现2048

200行Python代码实现2048 一.实验说明 1. 环境登录 无需密码自动登录,系统用户名shiyanlou 2. 环境介绍 本实验环境采用带桌面的Ubuntu Linux环境,实验中会用到桌面上的程序: LX终端(LXTerminal): Linux命令行终端,打开后会进入Bash环境,可以使用Linux命令 GVim:非常好用的编辑器,最简单的用法可以参考课程Vim编辑器 3. 环境使用 使用GVim编辑器输入实验所需的代码及文件,使用LX终端(LXTerminal)运行所需命令进行操

基于Tkinter用50行Python代码实现简易计算器

Tkinter一般是python自带的,所以代码不需要其他组件,本程序是在python2.7版本实现的. 主要涉及了tkinter的使用,函数定义和调用,匿名函数的使用,类成员函数定义等python基础知识,适合新手学习. 代码如下: from Tkinter import * #创建横条型框架 def frame(root, side): w = Frame(root) w.pack(side = side, expand = YES, fill = BOTH) return w #创建按钮

一起来写2048(160行python代码)

前言: Life is short ,you need python. --Bruce Eckel 我与2048的缘,不是缘于一个玩家,而是一次,一次,重新的ACM比赛.四月份校赛初赛,第一次碰到2048,两周后决赛再次遇到2048,后来五月份的广东省赛,又出现了2048.在这三次比赛过程中,我一次2048都没玩过..全靠队友的解释,直到昨天,我突然想起写个2048吧,于是下了个2048玩了几盘,之后就開始用python来写了,心想就不写界面了,为了简洁. 我对python并不熟悉,可是我在之前

10行python代码实现约瑟夫问题

什么是约瑟夫问题? 约瑟夫问题是一个有趣的数学游戏,游戏规则如下: 1.N个人围成一个圈,编号从1开始,依次到N. 2.编号为M的游戏参与者开始报数,报数从1开始,后面的人报数接龙,直到K为止,报数为K的人将出局. 3.出局者的下一个玩家接着从1开始报数,如此循环,直到剩下一个玩家时游戏结束,这个玩家就是游戏获胜者. 那么问题来了,哪个编号是游戏获胜者呢? 下面通过简单的几行python代码来解决这个问题: #!/usr/bin/env python # Joseph Problem def j

vim中注释多行python代码

在vim中注释多行python代码比较麻烦,主要由以下几种方法: (1)将需要注释的代码以文档字符串的形式呈现 (2)将需要注释的代码以函数的形式呈现 (3)使用vim自身快捷键 我们主要使用第三种方式,下面是注释和取消注释的方法. 1.多行注释: 1. 首先按esc进入命令行模式下,按下Ctrl + v,进入列(也叫区块)模式; 2. 在行首使用上下键选择需要注释的多行; 3. 按下键盘(大写)"I"键,进入插入模式: 4. 然后输入注释符("//"."

写二十来行python代码,让图灵机器人陪你玩耍,(附源码)

写二十来行python代码,让图灵机器人陪你玩耍,感觉不是非常的智能. import os import json import urllib2 class Chat(object): key = "申请的key" # turing123网站 apiurl = "http://www.tuling123.com/openapi/api?" def init(self): os.system("clear") print "尽情调教把!&

40多行python代码开发一个区块链。

40多行python代码开发一个区块链?可信吗?我们将通过Python 2动手开发实现一个迷你区块链来帮你真正理解区块链技术的核心原理.python开发区块链的源代码保存在Github. 尽管有人认为区块链目前还是不成熟的解决方案,但它无疑是计算机发展史上的一个奇迹.但是,到底区块链是什么呢? 区块链 区块链是一个公开的数字账本,它按时间顺序记录比特币或其他加密货币发生的交易. 更一般的讲,区块链是一个公共数据库,新的数据将存储在一个被称为"块"的容器中,然后块会被添加到一个不可篡改的

10 行Python 代码,实现 AI 目标检测技术,真给力!

只需10行Python代码,我们就能实现计算机视觉中目标检测. from imageai.Detection import ObjectDetection import os execution_path = os.getcwd() detector = ObjectDetection() detector.setModelTypeAsRetinaNet() detector.setModelPath( os.path.join(execution_path , "resnet50_coco_b