Python编程快速上手-第八章实践参考答案

Python编程快速上手-第八章实践参考答案:
在源代码的基础上修改的,源码链接:https://blog.csdn.net/do_care/article/details/79072584

import re
path = "H:\\Users\\Administrator\\python3.7\\shijian8.9.2" #此文件路径必须存在(也可以自行创建或指定路径)
textFile = open(path + "\\tianci.txt") #此文本文件可以不用事先创建,open函数会帮你创建(如果没有的话)
text = textFile.read() #把打开的文本对象通过read()方法转换成字符串形式并赋值给变量text。
repWordList = re.compile(r'[A-Z]{2,}').findall(text) #用findall()方法匹配text文本中的正则表达式对象,以列表形式返回。
# reqWordList = re.findall(compile(r'[A-Z{2,}'), text) 这里想直接用re.findall()函数写,但是报错,请大家指教。
for wordString in repWordList:
    if wordString[0].lower() == "a" or wordString[0].lower() == "o" or wordString[0].lower() == "i" or \
       wordString[0].lower() == "e" or wordString[0].lower() == "u": #元音字母也不是只有一个a啊,还有o,i,e,u。
        rep = input('Enter an %s:\n' % wordString.lower())
    else:
        rep = input('Enter a %s:\n' % wordString.lower())
    text = text.replace(wordString, rep, 1) #替换,这里第三个参数是可选的,1代表只替换1次。
print(text)
new_textFile = open(path + "\\newtianci.txt", "w")
new_text = new_textFile.write(text) 

猜你喜欢

转载自blog.csdn.net/qq_20667737/article/details/86656171