拷贝文件

一次读写五十个字符。第一个参数是源文件名,第二个参数是新文件名。

def copyFile(oldFile,newFile):
    f1=open(oldFile,"r")
    f2=open(newFile,"w")
    while 1:
        text=f1.read(50)
        if text=="":
            break
        f2.write(text)
    f1.close()
    f2.close()
    return



函数filterFile拷贝一个文件,同时将旧文件中不是以“#”开头的行写入新文件中

def filterFile(old,new):
    sfile=open(old,"r")
    dfile=open(new,"w")
    while 1:
        text=sfile.readline()
        if text=="":
            break
        elif text[0]=="#":
            continue
        else:
            dfile.write(text)
        sfile.close()
        dfile.close()

在这个函数里有两个关键字:breakcontinuebreak 表示如果读取的行内容为空,则完全终止while 的循环;continue 表示若行的首字符为“#”,则终止这一次的循环,也就是continue 以下的循环内的语句不执行了,返回到循环的顶部继续下一次循环。



write的参数只能是字符串,如果想把其它类型的变量写入文件,就必须将其转换成字符串。一个简单的方法是利用str函数:

>>> f = open("test.dat", "w")
>>> f.write(str(1234.56) + '\n')
>>> f.write(str(1000))
>>> f.close()