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实现linux服务器批量修改密码并生成execl
Apr 22 Python
使用Python生成url短链接的方法
May 04 Python
KMP算法精解及其Python版的代码示例
Jun 01 Python
Python while 循环使用的简单实例
Jun 08 Python
浅谈Python爬虫基本套路
Mar 25 Python
Python使用gluon/mxnet模块实现的mnist手写数字识别功能完整示例
Dec 18 Python
导入tensorflow:ImportError: libcublas.so.9.0 报错
Jan 06 Python
PyQt5实现仿QQ贴边隐藏功能的实例代码
May 24 Python
python和php哪个容易学
Jun 19 Python
python爬虫 requests-html的使用
Nov 30 Python
python Matplotlib基础--如何添加文本和标注
Jan 26 Python
python Protobuf定义消息类型知识点讲解
Mar 02 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 socket并借助telnet实现简单的聊天程序
2013/06/18 PHP
探讨GDFONTPATH能否被winxp下的php支持
2013/06/21 PHP
php 下载保存文件保存到本地的两种实现方法
2013/08/12 PHP
PHP变量的定义、可变变量、变量引用、销毁方法
2013/12/20 PHP
PHP自定义函数实现数组比较功能示例
2017/10/19 PHP
laravel-admin解决表单select联动时,编辑默认没选上的问题
2019/09/30 PHP
可以用鼠标拖动的DIV实现思路及代码
2013/10/21 Javascript
JQuery页面的表格数据的增加与分页的实现
2013/12/10 Javascript
详解AngularJS中的表格使用
2015/06/16 Javascript
JS实现网页上随机产生超链接地址的方法
2015/11/09 Javascript
js实现文字跑马灯效果
2017/02/23 Javascript
教你用十行node.js代码读取docx的文本
2017/03/08 Javascript
js遍历获取表格内数据的方法(必看)
2017/04/06 Javascript
vue实现a标签点击高亮方法
2018/03/17 Javascript
对node.js中render和send的用法详解
2018/05/14 Javascript
jQuery实现模糊搜索功能的方法分析
2018/06/29 jQuery
手挽手带你学React之React-router4.x的使用
2019/02/14 Javascript
vue项目前端知识点整理【收藏】
2019/05/13 Javascript
js+canvas实现画板功能
2020/09/13 Javascript
[01:36]极致酷炫!TI9典藏宝瓶+撼地者至宝展示
2019/06/11 DOTA
Python运行的17个时新手常见错误小结
2012/08/07 Python
python实现的文件夹清理程序分享
2014/11/22 Python
Python实现扫描局域网活动ip(扫描在线电脑)
2015/04/28 Python
合并百度影音的离线数据( with python 2.3)
2015/08/04 Python
Python的“二维”字典 (two-dimension dictionary)定义与实现方法
2016/04/27 Python
Python爬虫代理IP池实现方法
2017/01/05 Python
详解用pyecharts Geo实现动态数据热力图城市找不到问题解决
2019/06/26 Python
关于tensorflow的几种参数初始化方法小结
2020/01/04 Python
Django多个app urls配置代码实例
2020/11/26 Python
德国咖啡批发商:Coffeefair
2019/08/26 全球购物
大学生最新职业生涯规划书范文
2014/01/12 职场文书
学生打架检讨书大全
2014/01/23 职场文书
学校地质灾害防治方案
2014/06/10 职场文书
房地产经营管理专业自荐信
2014/09/02 职场文书
幼儿园庆六一主持词
2015/06/30 职场文书
Unicode中的CJK(中日韩统一表意文字)字符小结
2021/12/06 HTML / CSS