工具:pycharm 3.10
#coding=utf-8 import os ls = os.linesep while True : filename = raw_input('Filename :\n') # wronly : 只写模式 creat:创建新文件 excl 若文件已存在则返回错误 try: fd = os.open(filename, os.O_WRONLY | os.O_CREAT | os.O_EXCL) except OSError, e : print "already has the file\n" else: break all = '' while True : entry = raw_input('>') if entry == '.' : all = all + '.' break else: all = all + entry all = all +' ' os.write(fd,all) os.close(fd) import os while True : fname = raw_input('Filename = :\n') if os.path.exists(fname) : fobj = open(fname,'r') for eachlines in fobj : print eachlines, fobj.close() break else: print "no such file"3.11
import os while True : fname = raw_input('Filename = :\n') if os.path.exists(fname) : fobj = open(fname,'r') for eachlines in fobj : #去除每行最后的换行符 eachlines = eachlines.strip('\n') print eachlines fobj.close() break else: print "no such file"3.12
#coding=utf-8 import os def makefile() : ls = os.linesep while True : filename = raw_input('Filename :\n') # wronly : 只写模式 creat:创建新文件 excl 若文件已存在则返回错误 try: fd = os.open(filename, os.O_WRONLY | os.O_CREAT | os.O_EXCL) except OSError, e : print "already has the file\n" else: break all = '' while True : entry = raw_input('>') if entry == '.' : all = all + '.' break else: all = all + entry all = all +' ' os.write(fd,all) os.close(fd) def readfile() : while True : fname = raw_input('Filename = :\n') if os.path.exists(fname) : fobj = open(fname,'r') for eachlines in fobj : eachlines = eachlines.strip('\n') print eachlines fobj.close() break else: print "no such file" if __name__ == '__main__' : while True : index = raw_input('read=r,write=w,quit=q:\n') if index == 'w': makefile() elif index == 'r' : readfile() elif index == 'q' : break3.13 参考网上的代码,只加了注释其余未改动 Tkinter模块:GUI编程,用于创建图形化窗口 platform模块:用于获得操作系统,系统结构,python信息等
#!/usr/bin/env python #-*- coding: utf-8 -*- #============================================================================= # FileName: # Desc: # Author: ToughGuy # Email: wj0630@gmail.com # HomePage: http://www.techzhai.net/ # Version: 0.0.1 # LastChange: 2013-02-20 14:52:11 # History: #============================================================================= from Tkinter import * import tkMessageBox,tkFileDialog import platform # nl = os.linesep #从系统中打开文件,将内容读在edit.box中 def openfile(): global filename # 使用global声明为全局变量,方便后边的程序调用 systype = platform.system() # 判断系统类型 if systype == 'windows': basedir = 'c:\\' else: basedir = '/' filename = tkFileDialog.askopenfilename(initialdir=basedir) try: fobj_r = open(filename, 'r') except IOError, errmsg: print '*** Failed open file:', errmsg else: editbox.delete(1.0, END) for eachline in fobj_r: editbox.insert(INSERT, eachline) fobj_r.close() #将editbox中的内容保存在当前文件中 def savefile(): save_data = editbox.get(1.0, END) try: fobj_w = open(filename, 'w') fobj_w.writelines(save_data.encode('utf-8')) # 感谢OSC-骠骑将军 指教 fobj_w.close() tkMessageBox.showinfo(title='提示', message='保存成功') except IOError, errmsg: tkMessageBox.showwarning(title='保存失败', message='保存出错 ') tkMessageBox.showwarning(title='错误信息', message=errmsg) except NameError: tkMessageBox.showwarning(title='保存失败', message='未打开文件') def showlinenum(): tkMessageBox.showinfo(title='提示', message='这个功能作者现在不会写,放这里装饰用的.') def destroy_ui(ui): ui.destroy() def aboutauthor(): author_ui = Toplevel() author_ui.title('关于') author_ui.geometry('200x80') about_string = Label(author_ui, text="作者: ToughGuy\n\n主页: http://www.techzhai.net/") confirmbtn = Button(author_ui, text='确定', command=lambda:destroy_ui(author_ui)) about_string.pack() confirmbtn.pack() # author_ui.mainloop() #创建框架 def CreateMenus(): # 初始化菜单 Menubar = Menu(root) # 创建文件菜单 filemenu = Menu(Menubar, tearoff=0) filemenu.add_command(label='打开文件', command=openfile) filemenu.add_command(label='保存文件', command=savefile) filemenu.add_command(label='退出', command=lambda:destroy_ui(root)) Menubar.add_cascade(label='文件', menu=filemenu) # 创建编辑菜单 editmenu = Menu(Menubar, tearoff=0) editmenu.add_command(label='显示行号', command=showlinenum) Menubar.add_cascade(label='编辑', menu=editmenu) # 创建帮助菜单 helpmenu = Menu(Menubar, tearoff=0) helpmenu.add_command(label='关于作者', command=aboutauthor) Menubar.add_cascade(label='帮助', menu=helpmenu) root.config(menu=Menubar) root = Tk() root.title('文本编辑器') root.geometry('500x400') CreateMenus() #创建编辑区域 editbox = Text(root, width=70, height=25, bg='white') editbox.pack(side=TOP, fill=X) root.mainloop()