zoukankan      html  css  js  c++  java
  • python编程快速上手之第8章实践项目参考答案

    第8章实践项目之疯狂填词

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

    首先准备一个a.txt的文本文件

    程序代码如下:

    #!/usr/bin/env python3.4
    # coding:utf-8
    # 8.9.2
    import re
    f1 = open('a.txt','r')
    strf1 = f1.read()
    print("原文件内容为:")
    print(strf1)
    strf1_list = strf1.split(' ')
    f1.close()
    # 由于原文件需要被替换的单词都是大写的英文单词
    # 使用正则表达式找出原文件中所有将被替换的单词
    replist = re.findall(r'[A-Z]{2,}',strf1)
    print("原文件中将被替换的单词为:")
    print(replist)
    print()
    for rep in replist:
        inputstr = input("Enter %s " % rep)
        print(inputstr)
        # 先将替换后的单词插入到原列表对应的位置
        strf1_list.insert(strf1_list.index(rep),inputstr)
        # 再将原先的单词删除
        strf1_list.remove(rep)
    # 将列表转换为字符串
    newstr = ' '.join(strf1_list)
    print("替换后的内容为:")
    #print(newstr)
    # 将新的字符串写入文件b.txt中,并打印到屏幕
    f2 = open('b.txt','w+')
    f2.write(newstr)
    f2.close()
    f3 = open('b.txt','r')
    print(f3.read())
    f3.close()

    输出结果为:

    cat下b.txt

    OK 大功告成。

  • 相关阅读:
    minicom的安装和tftp的安装
    主机和VMware中的Linux如实现共享文件夹
    gcc调试 学习1
    ARM1
    javaweb学习方案1
    java环境变量和tomcat环境变量配置
    逻辑代数
    在写一点关于MySQL的知识,感觉自己mmd
    Ural 1519 Formula 1 (DP)
    UVaLive 3126 Taxi Cab Scheme (最小路径覆盖)
  • 原文地址:https://www.cnblogs.com/mfyang/p/6719505.html
Copyright © 2011-2022 走看看