Python编程快速上手——疯狂填词程序实现方法分析


Posted in Python onFebruary 29, 2020

本文实例讲述了Python疯狂填词程序实现方法。分享给大家供大家参考,具体如下:

题目如下:

  • 创建一个疯狂填词程序,它将读入文件,并让用户在该文本文件中出现ADJECTIVE,NOUN,ADVERB,VERB等单词的地方,加上它们自己的文本。

  • 例如源文本如下: The ADJECTIVE panda walked to the NOUN and then VERB. A nearby NOUN was unaffected by these events.
  • 程序将找到这些出现的单词,提示用户取代他们

Enter an adjective:
silly
Enter a noun:
chandelier
Enter a verb:
screamed
Enter a noun:
pickup truck

思路如下:

  • 程序需要做以下事情:
    读入文本文件
    在相应单词的地方让用户输入替换
    保存修改后的文本文件,并将结果打印到屏幕
  • 代码需要做以下事情:
    导入模块re
    编写函数,创建正则表达式对象
    函数内调用Regex.findall()方法,返回匹配到的所有结果列表
    打开文本文件,导入到变量
    for循环控制输入
    字符串replace方法进行替换
    print()显示更改后的文本到屏幕
    open.write()保存到新文件

代码如下:

import re
def madLibs(longStr):
  madLibsRex = re.compile(r'ADJECTIVE|NOUN|ADVERB|VERB') #正则表达式对象
  print(madLibsRex.findall(longStr)) #验证是否模式匹配正确
  return madLibsRex.findall(longStr)

openFile = open('123.txt','r')
longStr = openFile.read() #将文本内容读入变量longStr
print("源文本如下:",longStr)
for i in madLibs(longStr): #循环遍历函数返回的匹配对象列表
  print("Enter an {0}:".format(i))
  longStr = longStr.replace(i,input()) #调用字符串的replace()方法输入替换,再赋值给longStr
print(longStr)
resultFile = open('new123.txt','w') #在当前工作目录创建一个新的文件
resultFile.write(longStr) #将字符串变量写入resultFile对象
openFile.close()
resultFile.close()

结果如下:

Python编程快速上手——疯狂填词程序实现方法分析

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python操作 hbase 数据的方法
Dec 18 Python
基于Django的python验证码(实例讲解)
Oct 23 Python
Python爬虫框架Scrapy实例代码
Mar 04 Python
Python pygorithm模块用法示例【常见算法测试】
Aug 16 Python
Pandas透视表(pivot_table)详解
Jul 22 Python
简单介绍python封装的基本知识
Aug 10 Python
python实现猜数字游戏
Mar 25 Python
基于python实现上传文件到OSS代码实例
May 09 Python
Python实现播放和录制声音的功能
Aug 12 Python
浅析python 通⽤爬⾍和聚焦爬⾍
Sep 28 Python
Python基础之变量的相关知识总结
Jun 23 Python
python数据可视化JupyterLab实用扩展程序Mito
Nov 20 Python
Python使用GitPython操作Git版本库的方法
Feb 29 #Python
如何使用python代码操作git代码
Feb 29 #Python
使用 Python 遍历目录树的方法
Feb 29 #Python
python 已知一个字符,在一个list中找出近似值或相似值实现模糊匹配
Feb 29 #Python
在python3中实现查找数组中最接近与某值的元素操作
Feb 29 #Python
python pandas移动窗口函数rolling的用法
Feb 29 #Python
基于Python fminunc 的替代方法
Feb 29 #Python
You might like
php设计模式 Composite (组合模式)
2011/06/26 PHP
php中inlcude()性能对比详解
2012/09/16 PHP
PHP获取浏览器信息类和客户端地理位置的2个方法
2014/04/24 PHP
ThinkPHP模板判断输出Present标签用法详解
2014/06/30 PHP
[原创]PHP字符串中插入子字符串方法总结
2016/05/06 PHP
PHP编程获取图片的主色调的方法【基于Imagick扩展】
2017/08/02 PHP
浅谈php的TS和NTS的区别
2019/03/13 PHP
在 PHP 和 Laravel 中使用 Traits的方法
2019/11/13 PHP
javascript 写类方式之八
2009/07/05 Javascript
JQuery Dialog(JS 模态窗口,可拖拽的DIV)
2010/02/07 Javascript
Javascript小技巧之生成html元素
2014/05/15 Javascript
JavaScript实现选择框按比例拖拉缩放的方法
2015/08/04 Javascript
原生 JS Ajax,GET和POST 请求实例代码
2016/06/08 Javascript
js学习之----深入理解闭包
2016/11/21 Javascript
javaScript语法总结
2016/11/25 Javascript
原生js验证简洁注册登录页面
2016/12/17 Javascript
JavaScript拖动层Div代码
2017/03/01 Javascript
JavaScript 上传文件(psd,压缩包等),图片,视频的实现方法
2017/06/19 Javascript
VUE实现可随意拖动的弹窗组件
2018/09/25 Javascript
JavaScript创建对象方式总结【工厂模式、构造函数模式、原型模式等】
2018/12/19 Javascript
微信小程序页面上下滚动效果
2020/11/18 Javascript
Vue-cli4 配置 element-ui 按需引入操作
2020/09/11 Javascript
[46:44]VG vs TNC Supermajor小组赛B组败者组决赛 BO3 第一场 6.2
2018/06/03 DOTA
[33:33]完美世界DOTA2联赛PWL S2 FTD.C vs SZ 第二场 11.27
2020/11/30 DOTA
用Python徒手撸一个股票回测框架搭建【推荐】
2019/08/05 Python
python+requests实现接口测试的完整步骤
2020/10/27 Python
css3使用animation属性实现炫酷效果(推荐)
2020/02/04 HTML / CSS
人力资源管理毕业生自荐信
2013/11/21 职场文书
高中学生期末评语
2014/04/25 职场文书
小学综合实践活动总结
2014/07/07 职场文书
委托书怎样写
2014/08/30 职场文书
2015中学政教处工作总结
2015/07/22 职场文书
升职自荐书
2019/05/09 职场文书
高中班主任寄语
2019/06/21 职场文书
php 防护xss,PHP的防御XSS注入的终极解决方案
2021/04/01 PHP
html5中sharedWorker实现多页面通信的示例代码
2021/05/07 Javascript