python对文件的操作


    打开文件的方式:

    r :  读数据  默认方式;

    w :  只写,打开文件之前重写这个文件,打开文件的同时把文件清空;

    a :   以追加的方式写在文件最后,因为指针在最后;

    + :  只有与r 一起使用的时候有意义, r+ 读写功能;

    b :  处理二进制方式使用b,在win下需要加b,在处理打包文件时需用b;

    U :  换行符不同,有的是\n  \n\r \r  ,只能和r一起使用 r+U,转换成 \n。


    对文件的操作:

    seek() : 调整指针开始的位置;

    tell()  : 显示指针的位置,按字节显示;

    trancate():只得到指定位置之前的数并重新写入该文件;

    read(arg):默认将整个文件内容读出来,也可以指定读多少字符;

    with open(’要打开的文件名‘,’打开文件方式‘)as 别名:管理文件操作,

                            可以同时操作两个文件:


    注: python2.0 中tell 和read 均按字符定义,而python3.0中则不同!


    with open(’log‘,’r‘)  as obj:

    obj.write()

    ----------

    loadlib.py :

    1111111111

    2222222222

    

    obj=open('loadlib.py','r')# open方式可以根据情况选择 推荐使用open

    print obj.tell()

    obj.seek(5)    # 调整指针开始位置

    print obj.tell()

    print obj.read()

    print obj.tell()         # 显示指针位置

    

    C:\Python27\python.exe E:/python-file/object.py

    0

    5

    1111

    222222222

    20

    

    Process finished with exit code 0

    ----------

    loadlib.py :

    1111111111

    2222222222

    

    obj=open('loadlib.py','r+')

    

    obj.write('000000000000000000000000000000000')

    obj.close()

    

    000000000000000000000000000000000

    ----------

    loadlib.py :

    1111111111

    2222222222

    

    obj=open('loadlib.py','r+')

    obj.write('000')

    obj.truncate()    # 截断数据,把当前指针位置之后的数据删除截断

    obj.close()

    

    000