博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python 学习记录
阅读量:6260 次
发布时间:2019-06-22

本文共 1133 字,大约阅读时间需要 3 分钟。

  hot3.png

添加新功能。将你上一个问题改造好的 readNwriteTextFiles.py 增加一个新功
能:允许用户编辑一个已经存在的文本文件。 你可以使用任何方式,无论是一次编辑一行,还
是一次编辑所有文本。需要提醒一下的是, 一次编辑全部文本有一定难度,你可能需要借助 GUI
工具包或一个基于屏幕文本编辑的模块比如 curses 模块。要允许用户保存他的修改(保存到
文件)或取消他的修改(不改变原始文件),并且要确保原始文件的安全性(不论程序是否正
常关闭)。
自己刚刚接触python,所以写的有点土,望大侠们多指点:
import os
ls=os.linesep
#get filename
    
fname=raw_input('please input file name:')
all=[]
if os.path.exists(fname):
    fwrite=open(fname,'r')
    Lines=fwrite.readlines()
    all.extend(Lines)
        
#get file content(text) lines
print "\n Enter lines('.' by itself to quit).\n"
#loop until user terminates input
while True:
    entry=raw_input('pleaseinput content')
    ifentry=='.':
        break
    else:
        all.append(entry)
    printall
#write lines to file with proper line-ending
while True:
    test=raw_input('youare sure to save this file?')
    iftest=='yes':
        fobj=open(fname,'w')
        fobj.writelines(['%s%s'%(x,ls)forx in all])
        fobj.close()
        print'Done'
    eliftest=='no':
        print'no need to write'
        break
    else:
        print'please input right words to judge:'
try:
    fobj=open(fname,'r')
except IOError,e:
    print'***file open error',e
else:
    foreachLine in fobj:
        printeachLine,
    fobj.close()

转载于:https://my.oschina.net/yusi/blog/515868

你可能感兴趣的文章
Tensorflow快餐教程(1) - 30行代码搞定手写识别
查看>>
聊聊flink Table的Set Operations
查看>>
3.3 卷积神经网络进阶-Inception-mobile_net
查看>>
JS学习系列 06 - 变量对象
查看>>
Swift开发应用时如何更方便地使用颜色?
查看>>
ubuntu虚拟机设置静态ip(windows能够ping通ubuntu虚拟机)
查看>>
Redis高级特性介绍及实例分析
查看>>
Android的复选框的详细开发案例分析
查看>>
iOS FMDB数据库之增删改查使用
查看>>
EventBus源码解析
查看>>
Android中绘制简单几何图形和路径Path
查看>>
Internationalization(i18n) support in SAP CRM,UI5 and Hybris
查看>>
Xcode Debug调试汇总
查看>>
设计模式:再严谨的单例也尽量不要使用
查看>>
TiDB at 丰巢:尝鲜分布式数据库
查看>>
三篇文章了解 TiDB 技术内幕 —— 谈调度
查看>>
Next.js踩坑入门系列(六) —— 再次重构目录
查看>>
1. Context - React跨组件访问数据的利器
查看>>
Git常用操作、提交到GitHub等
查看>>
Android基础 四大组件之广播(Broadcast)
查看>>