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))

猜你喜欢

转载自blog.csdn.net/u014221647/article/details/81017209
今日推荐