python 拼写检查器
import re
from collections import Counter
def words(text):
----return re.findall(r'\w+',text.lower())
Words = Counter(words(open('big.txt').read()))
def P(word,N=sum(Words.values())):
----return Words[word] / N
def correction(word):
----return max(candidates(word), key=P)
def candidates(word):
----return (known([word]) or known(editsl(word)) or known(editsl2(word)) or [word])
def known(words):
----return set(w for w in words if w in Words)
def editsl(word):
----letters = 'abcdefghijklmnopqrstuvwxyz'
----splits = [(word[:i],word[i:]) for i in range(len(word)+1)]
----deletes = [L + R[1:] for L, R in splits if R]
----transposes = [L + R[1] + R[0] + R[2:] for L, R in splits if len(R)>1]
----replaces = [L + c + R[1:] for L, R in splits if R for c in letters]
----inserts = [L + c + R for L, R in splits for c in letters]
----return set(deletes + transposes + replaces + inserts)
def editsl2(word):
----return (e2 for e1 in edits1(word) for e2 in edits1(e1))
if __name__ == '__main__':
----val = input('please inserts a word :')
----string = correction(val)
----print(string)
big.txt 资源地址
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
架构书籍推荐:Java中高级、架构师值得一读!
上周我们免费送出了6本关于Python的重量级技术书籍,推出后反响特别强烈,有一个和最后一名仅差了一个赞,不过我们还是额外加送了一本送给这位朋友,以资鼓励,从另一面也可以看出Java程序猿对Python的热爱程序。 这次我们继续发力,送的书籍更贴近Java技术专业,更符合大部分Java码农刚需!因此,这次针对的人群为Java中高级开发工程师、系统架构师等从事Java一线开发的程序猿。 说下送这本书的背景吧,无意中看到了<<可伸缩服务架构:框架与中间件>>这本书,看完目录后就觉得非常接地气,十分接近一线开发实践,所以立马就订购了一本。这么好的书,因此也推荐给大家,并免费赠送6本给粉丝学习阅读。 本书定价 109 元 / 本 本书详解分布式发号器、消息队列框架、数据库分库分表、缓存、ES、分布式调度任务、RPC、Dubbo、高性能中间件,破解可伸缩服务架构奥秘。 √ 云时代架构系列经典!重磅级架构书2018年重磅上市! √ 详解高可用架构设计的核心要点:可伸缩与可扩展 √ 详解分布式发号器、消息队列框架、数据库分库分表、缓存、Elasticsearch、分布式调度任...
- 下一篇
Java Primitive type与References type
Java语言规格文档与JVM规格文档不一致... surprice Java是一种强类型语言,它语言规范中定义了Java的数据类型分为,基本数据类型和引用数据类型。 基本数据类型(Primitive type):4中整型,2种浮点类型,1种表示unicode编码的char类型和表示真知的boolean类型。 引用数据类型(References type):(class,array,interface)类型 引用类型级别:(强,软,弱,虚)引用类型 difference 基本类型存储的是实际的值,对象引用类型存储的是对象的地址。 // 引入Lombok,运行这个例子可以看出引用类型与基本类型的差别。 @Data public class TypeDemo { private int a = 10; public static void main(String[] args) { TypeDemo demo = new TypeDemo(); TypeDemo demo1 = demo; demo1.setA(100); System.out.println(demo.getA()); i...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS8编译安装MySQL8.0.19
- MySQL8.0.19开启GTID主从同步CentOS8
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Red5直播服务器,属于Java语言的直播服务器
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- CentOS6,CentOS7官方镜像安装Oracle11G