day3 文件操作

    文件操作是在内存中进行操作的,因为文件是存储在内存中的.

    open函数,该函数用于文件处理:

    操作文件时,一般需要经历如下步骤:

    (1)打开文件;

    (2)操作文件

    一、打开文件

    文件句柄 = open("文件路径","模式")

    打开文件时,需要指定文件路径和以何等方式打开文件,打开后,即可获取该文件句柄,日后通过此文件句柄对该文件操作。

    打开文件的模式有:

    (1)r,只读模式(默认);

    (2)w,只写模式。【不可读;不存在则创建;存在则删除内容;】

    (3)a,追加模式。【可读;   不存在则创建;存在则只追加内容;】

    "+" 表示可以同时读写某个文件

    (1)r+,可读写文件。【可读;可写;可追加】;

    (2)w+,写读;

    (3)a+,同a

    "U"表示在读取时,可以将 \r \n \r\n自动转换成 \n (与 r 或 r+ 模式同使用)

    (1)ru

    (2)r+u

    "b"表示处理二进制文件(如:FTP发送上传ISO镜像文件,linux可忽略,windows处理二进制文件时需标注)

    (1)rb      (2)wb         (3)ab

    二、操作

    1.def close(self, *args, **kwargs):

    # real signature unknown 关闭文件

    pass

    2.def fileno(self, *args, **kwargs):

     # real signature unknown 文件描述符

    pass   

    3.def flush(self, *args, **kwargs):

    # real signature unknown 刷新文件内部缓冲区

    pass

  4.def isatty(self, *args, **kwargs):

     # real signature unknown 判断文件是否是同意tty设备

    pass

    5.def read(self, *args, **kwargs):

    # real signature unknown 读取指定字符的数据

    pass

    打开一个文件,read()是按照字符来进行读取的。读取文件的信息,每次读取多少字符。

    f = open("file","r",encoding="utf-8")
    #f.write("ad56465645")
    print(f.read(2))
    f.close()

    运行结果如下:

    耿a

    6.def readable(self, *args, **kwargs):

    # real signature unknown 是否可读

    pass   

    7.def readline(self, *args, **kwargs):

     # real signature unknown 仅读取一行数据

    pass

    f = open("file","r",encoding="utf-8")
    ret = f.readline()
    print(ret)
    f.close()
    readline()是读取文件的第一行,仅读取文件的第一行,并且形成一个字符串。

  """

    耿ad56465645
  长123666
  张dadaebdadojou

    """

    运行结果如下:

    耿ad56465645

    8.def seek(self, *args, **kwargs):

    # real signature unknown 指定文件中指针位置

    pass

    与tell()经常一起使用,放置文件指针,告诉文件从哪里进行读取。

    f = open("file","r",encoding="utf-8")
    f.seek(3)
    print(f.read(3))
    #print(f.tell())
    f.close()

    seek()是按指针放置文件读取的位置,按照字节进行放置。tell()看文件读取到那里。

    9.def seekable(self, *args, **kwargs):

    # real signature unknown 指针是否可操作

    pass

    10.def tell(self, *args, **kwargs):

    # real signature unknown

    获取指针位置

    pass

    11.def truncate(self, *args, **kwargs):

    # real signature unknown 截断数据,仅保留指定之前数据

    pass

    我们知道,打开文件之后,我们使用seek()放置指针位置,read()读取指针后面的内容,而truncate()是截取指针之前的文件内容。

    12.def writable(self, *args, **kwargs):

    # real signature unknown 是否可写

    pass

    13.def write(self, *args, **kwargs):

    # real signature unknown

    写内容

    pass

    14.def readlines(self, size=None): # real signature unknown; restored from __doc__

     读取所有数据,并根据换行保存值列表 """

posted @ 2017-05-15 22:27  (野生程序员)  阅读(211)  评论(0编辑  收藏  举报