美文网首页
文件操作

文件操作

作者: 李树涛 | 来源:发表于2018-11-17 07:54 被阅读0次

    一、字符集

    文件打开时,默认使用操作系统的字符集打开,windows默认的字符集是GBK,但pycharm默认识别的字符集是UTF-8,这样如果打开时不指定UTF-8字符集,会提示字符集错误;

    类似于,pycharm只认识UTF-8语言,文件相当于一本书,默认使用GBK语言展示,这样pycharm就不认识了,只有指定文件使用UTF-8语言展示,pycharm才认识;

    二、打开文件

    1、直接指定地址打开文件并将内容赋值给变量

    data=open("e:\\123.txt").read()

    2、指定字符集打开并将打开读取的内容赋值给变量

    data=open("e:\\123.txt",encoding=("gbk")).read()

    3、将打开的文件句柄赋值给变量

    f=open("e:\\123.txt",encoding=("gbk"))

    4、read方法会一次行将文件内容全部读取出来,并将文件指针指向文件末尾,当再次使用read方法读取这个文件时,因为文件指针指向文件末尾,所以读取的内容为空;

    5、文件默认打开方式为只读模式;

    6、r 读模式不能写,w 写模式不能读,a 追加模式不能读,r+读追加模式,w+写读模式,a+追加读模式,rb 二进制读模式(网络传输),wb 二进制写模式

    7、w模式是创建一个新文件写入,如果文件已存在则会覆盖源文件

    f=open("e:\\123.txt",'w',encoding=("gbk"))

    8、文件句柄默认使用迭代器模式

    for line in f:

    print(line)

    9、f.tell()查询文件指针当前所在位置,返回字符数;

    10、f.seek(字符位置)设置文件指针位置,0为文件起始位置;

    11、f.encoding 返回当前文件打开使用的字符集;

    12、f.fileno()    返回文件句柄在内存中的编号,操作系统打开的文件的编号,不是内存地址

    13、f.seekable    返回文件是否可以设置文件指针位置;

    14、f.readable    判断文件是否可读;

    15、f.writeable    判断文件是否可写;

    16、f.flush()    将写入的数据强制从内存缓存中写到硬盘;

    例:模拟进度条

    import sys,time

    for i in rang(20):

        sys.stdout.write("#")

        sys.stdout.flush()

        time.sleep(0.1)

    17、f.closed    返回文件是否关闭;

    18、f.truncate(字符数)    从指定字符位置往后清空;

    19、网络传输只能是二进制模式

    相关文章

      网友评论

          本文标题:文件操作

          本文链接:https://www.haomeiwen.com/subject/hhsrfqtx.html