基本上,我想做的是创建一个程序,将一个句子/段落作为用户输入,查找每个单词的同义词,并用同义词替换该词。到目前为止,我创建的这个程序运行得很好,但是有一些问题/人为错误/逻辑错误。我现在得到的是:response=input("Enter what you want to thesaurize")

orig=response #puts user input into a string

num=orig.count(" ")+1 #finds number of words in the sentence

orig=orig.split(" ") #turns the sentence into a list of its words

new=[] #creates a new list to put the new words in, in case I'd want to go back to the original sentence for any reason

for i in range (num):

if orig[i] not in badWords: #makes sure that the word is not a no-synonym word like "the" or "be"

new.insert(i, myFuncs.replace(orig[i])) #the replace function (which I put in a separate module for neatness purposes) looks up the word on thesaurus.com and replaces it with a synonym

else:

new.insert(i, orig[i]) #If the word is an excluded word, it simply leaves it alone and keeps it in the new sentence

final="" #creates an empty string to put the new words in

for j in range(0,num):

final=final+new[j]+" " #turns the list of new words into a string that can be printed

print(final)

同样,这是完美的,但也有一些问题。基本上,我将其归纳为4个基本问题:

1)该词没有同义词,但仍不在排除词列表中

2)输入单词的错误含义,或返回的含义在用户输入的上下文中没有意义

3)动词的错误时态被返回并且

4)当输入名词时,该词的动词会返回,反之亦然(即“我要烤鸡”变成“我要烧鸡”或类似的意思)。在

基本上,我可以手动修复所有这些问题,方法是让用户浏览每个没有意义的单词,然后使用嵌套的if else和其他控制结构来引导他们选择正确的单词,但我认为这对用户来说是很乏味的,而且会破坏整个要点,特别是如果他们输入的是很多话。在

所以基本上我在问,这些问题中的哪一个可以自动化?也就是说,有没有什么方法可以编写代码让计算机识别这些问题?修复这些错误是很容易的,但是真正让程序识别逻辑错误而不是让用户处理它是困难的部分。在

python名词同义词只替换2个_用同义词替换句子中的每个单词的Python程序相关推荐

  1. python n个list如何组成矩阵_通过学习在processing中操作图片,掌握python 列表操作...

    这次的教学非常简单,只需要安装了python模式的processing就可以(安装教程见专栏目录).我从网上找了一个比100*100稍微大一点的图片,你可以也找一个.然后我们就可以一起开始今天的学习啦 ...

  2. 给定一个句子(只包含字母和空格), 将句子中的单词位置反转,单词用空格分割, 单词之间只有一个空格,前后没有空格。

    给定一个句子(只包含字母和空格), 将句子中的单词位置反转,单词用空格分割, 单词之间只有一个空格,前后没有空格. 比如: (1) "hello xiao mi"-> &qu ...

  3. python知网查重多少钱_他文献查到凌晨两点,我用Python十分钟搞定!

    大家好,我是爱学习的趣习君. 对于应届毕业生来说,今年一定是难熬的一年.本来找工作.写论文就已经是两座大山了,还要面临论文无指导的额外压力. 这让我想到了去年毕业的表弟,当时他为了完成论文,摔烂了三个 ...

  4. java将数字替换为空_将数字替换为java中正确位置的单词

    实际上我正试图用用户给出的句子中的数字替换为单词.本案例日期格式;例如:我的生日是在16/6/2000,我是 java的新手 – >成为->我的生日是七月十六日,我是java的新手 这是代 ...

  5. python内循环只执行一次_如何1分钟内从3600只股种选出黑马股,仅分享这一次(太透彻了)...

    "1234"操盘定理中,1是指如何持牛股,2是指观念要正确,3是指看破十个现象,4是指抓热点. 具体讲解下选股步骤 盘后我们怎么去快速选出超短线需要密切关注的票呢?其实选股方法少说 ...

  6. python抓取抖音热门视频_要是30行代码!7步教会你Python爬取网页抖音热门视频

    前言 抖音短视频相信大家都听过,也不陌生对吧!可以看到海量的短视频,涵盖了各大行业.个人觉得抖音有毒,刷着刷着根本停不下来,一看时间就是凌晨3.4点.今天带大家爬取抖音网页版的视频数据!一睹为快吧 本 ...

  7. hive replace替换多个_详解Mysql数据库中replace与replace into的用法及区别

    概述 Mysql数据库replace与replace into都是经常会用到的功能:replace其实是做了一次update操作,而不是先delete再insert:而replace into其实与i ...

  8. python多个日志模块怎么隔离_在多个模块中使用Python日志logging

    最好的做法是在每个模块中都有一个像这样定义的logging器: import logging logger = logging.getLogger(__name__) 靠近模块的顶部,然后在模块的其他 ...

  9. python运行excel高级筛选怎么用_懂点EXCEL就行!教你利用Python做数据筛选(上)...

    前言 Python的数据清洗功能有多厉害,相信不用我说大家都知道了,寥寥几行代码便可以把一份杂乱无章的表格给处理的干干净净.但是python也是不容易入门的,毕竟编程语言要理解和精通也是要花不少功夫的 ...

  10. java文件替换一行数据_用Golang替换文件中的一行

    我是Golang的新手,从一些例子开始 . 目前,我要做的是逐行读取文件,并在满足特定条件时将其替换为另一个字符串 . 该文件用于测试目的包含四行: one two three four 处理该文件的 ...

最新文章

  1. 如何理解李飞飞价值十亿美金的“人文AI”计划 ?
  2. 遍历替换字符串中特定字符
  3. 在Intellij上面导入项目 AOP示例项目 AspectJ学习 Spring AoP学习
  4. android打开项目更换版本,android1.6项目,换成其他包的方法,及修改默认启动虚拟机的版本...
  5. 简历英文 计算机水平,计算机英文 简历
  6. 技嘉主板万能网卡驱动_技嘉Z490系列主板来袭:16相供电/钽电容,堆料更进一步...
  7. js php 时间格式化字符串,JS怎么实现字符串与日期的互相转换及日期的格式化
  8. OpenCV3学习(11.5) FAST特征检测器FastFeatureDetector
  9. Oracle 20c 新特性:自动的区域图 - Automatic Zone Maps
  10. Abp vnext Web应用程序开发教程 6 —— 作者:领域层
  11. ActionScript 3.0 API 中的 Video 类
  12. 36. 理解copy_if算法的正确实现
  13. Cell右滑的动作状态
  14. net-snmp的定制编译
  15. signature=0142b13a38da3ce7be8fce0d56b678af,授权系统
  16. 百度的“知心搜索”揭秘
  17. tersorrt安装_pytorch/mxnet模型tensorrt部署
  18. python删除重复单词_Python - 过滤重复的单词
  19. iwatch表盘壁纸图片_iwatch壁纸大全卡西欧表盘app
  20. 【元胞自动机】基于元胞自动机的人口疏散仿真matlab代码

热门文章

  1. python怎么注释掉一段代码_爬取出来的网页代码都被注释掉怎么解决?
  2. 数据结构与算法-浙江大学陈越数据结构第一章学习
  3. 重构Webpack系列之三 ----出口(output)
  4. 微宝球型机器人功能_《宇宙机器人 无线控制器使用指南》评测:与次世代的美好初恋...
  5. Caliburn.Micro入门
  6. LNMP的运维追踪技巧总结
  7. 计算两个路径的父亲路径
  8. 自己编写的一个代码统计的小工具
  9. 安装Baidu Sitemap Generator插件显示“该插件没有有效的标题”
  10. 'mysql' 不是内部或外部命令,也不是可运行的程序或批处理文件的解决办法