python编程快速上手 第8章实践项目答案

8.2疯狂填词

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

import re
insertWord = open('D:\\python\\panda.txt')
content = insertWord.read()
insertWord.close()

contentList = content.split(' ')
regex = re.compile(r'[A-Z.]{4,}')
temp = regex.findall(content)
for i in temp:
    subWord = input('please inset a '+i+":")
    contentList[contentList.index(i)] = subWord
result = ' '.join(contentList)
print(result)

saveR = open('D:\\python\\panda.txt','w')
saveR.write(result)
saveR.close()

8.3正则表达式查找

编写一个程序,打开文件夹中所有的.txt文件,查找匹配的用户提供的正则表达式的所有行。结果应该打印在屏幕上。

import re, os

# 打开.txt
path = 'E:\\MyScript'
fileNameList = os.listdir(path)
for fileNameString in fileNameList:
    mo = re.compile(r'.+\.txt$').search(fileNameString)
    if mo == None:
        continue
    else:
        txtFileString = open(os.path.join(path, mo.group())).read()
        # 匹配正则表达式
        resultList = re.compile(r'\d{3}').findall(txtFileString)
        print('\n'.join(resultList))

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值