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之dict()的操作方法
Sep 24 Python
Python MySQL数据库连接池组件pymysqlpool详解
Jul 07 Python
python的mysqldb安装步骤详解
Aug 14 Python
Python中最大最小赋值小技巧(分享)
Dec 23 Python
Tornado 多进程实现分析详解
Jan 12 Python
python使用mysql的两种使用方式
Mar 07 Python
Sanic框架流式传输操作示例
Jul 18 Python
python opencv 批量改变图片的尺寸大小的方法
Jun 28 Python
解决python多线程报错:AttributeError: Can't pickle local object问题
Apr 08 Python
快速解决jupyter启动卡死的问题
Apr 10 Python
在Matplotlib图中插入LaTex公式实例
Apr 17 Python
自己搭建resnet18网络并加载torchvision自带权重的操作
May 13 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发送post请求函数分享
2014/03/06 PHP
PHP定时更新程序设计思路分享
2014/06/10 PHP
PHP+jQuery+Ajax实现分页效果 jPaginate插件的应用
2015/10/09 PHP
PHP中explode函数和split函数的区别小结
2016/08/24 PHP
php异步:在php中使用fsockopen curl实现类似异步处理的功能方法
2016/12/10 PHP
php的PDO事务处理机制实例分析
2017/02/16 PHP
Google 静态地图API实现代码
2010/11/19 Javascript
jQuery EasyUI API 中文文档 - Form表单
2011/10/06 Javascript
JS实现淘宝幻灯片效果的实现方法
2013/03/22 Javascript
Js中使用hasOwnProperty方法检索ajax响应对象的例子
2014/12/08 Javascript
angular.foreach 循环方法使用指南
2015/01/06 Javascript
jQuery+jsp实现省市县三级联动效果(附源码)
2015/12/03 Javascript
什么是JavaScript注入攻击?
2016/09/14 Javascript
微信小程序 wx.request(object) API详解及实例代码
2016/09/30 Javascript
jQuery实现自动调用和触发某个事件的方法
2016/11/18 Javascript
jQuery用FormData实现文件上传的方法
2016/11/21 Javascript
Node.js开发教程之基于OnceIO框架实现文件上传和验证功能
2016/11/30 Javascript
ionic2中使用自动生成器的方法
2018/03/04 Javascript
vue中子组件的methods中获取到props中的值方法
2018/08/27 Javascript
axios取消请求的实践记录分享
2018/09/26 Javascript
Vue入门之数量加减运算操作示例
2018/12/11 Javascript
layui监听工具栏的实例(操作列表按钮)
2019/09/10 Javascript
Vue点击切换Class变化,实现Active当前样式操作
2020/07/17 Javascript
python安装scipy的方法步骤
2019/06/26 Python
Django为窗体加上防机器人的验证码功能过程解析
2019/08/14 Python
python+selenium 简易地疫情信息自动打卡签到功能的实现代码
2020/08/22 Python
ProBikeKit澳大利亚:自行车套件,跑步和铁人三项装备
2016/11/30 全球购物
护士演讲稿范文
2014/01/05 职场文书
初二生物教学反思
2014/02/03 职场文书
狼和鹿教学反思
2014/02/05 职场文书
小学生操行评语大全
2014/04/22 职场文书
个人违纪检讨书
2014/09/15 职场文书
法人单位适用的授权委托书
2014/09/19 职场文书
《祁黄羊》教学反思
2016/02/20 职场文书
党员公开承诺书2016
2016/03/24 职场文书
oracle DGMGRL ORA-16603报错的解决方法(DG Broker)
2021/04/06 Oracle