zoukankan      html  css  js  c++  java
  • Python4

    对文件操作流程

    1. 打开文件,得到文件句柄并赋值给一个变量
      • 文件的内存对象-包含 文件名、字符集、大小、在硬盘上的起止位置...
    2. 通过句柄对文件进行操作
    3. 关闭文件

    open 方法

    open()函数打开一个文件,创建一个file对象,语法如下:

    file object = open(file_name [, access_mode][, buffering])
    • file_name:file_name变量是一个包含了你要访问的文件名称的字符串值。
    • access_mode:access_mode决定了打开文件的模式:只读,写入,追加等。这个参数是非强制的,默认文件访问模式为只读(r)。
    • buffering:如果buffering的值被设为0,就不会有寄存。如果buffering的值取1,访问文件时会寄存行。如果将buffering的值设为大于1的整数,表明了这就是的寄存区的缓冲大小。如果取负值,寄存区的缓冲大小则为系统默认。
    • 除此之外,还可能有的参数是字符集:  encoding="utf-8"

    打开模式:

    r 以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。
    rb 以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。
    r+ 打开一个文件用于读写。文件指针将会放在文件的开头。
    rb+ 以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。
    w 打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
    wb 以二进制格式打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
    w+ 打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
    wb+ 以二进制格式打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
    a 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
    ab 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
    a+ 打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。
    ab+ 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。

    File对象

     一个文件被打开后,你有一个file对象,属性如下:

    • file.closed  ---->   返回true如果文件已被关闭,否则返回false。
    • file.mode    ---->   返回被打开文件的访问模式。 
    • file.name    ---->   返回文件的名称。
    • file.softspace ---> 如果用print输出后,必须跟一个空格符,则返回false。否则返回true。

    close()方法      ----->  fileObject.close()

    File 对象的 close()方法刷新缓冲区里任何还没写入的信息,并关闭该文件,这之后便不能再进行写入。

    当一个文件对象的引用被重新指定给另一个文件时,Python 会关闭之前的文件。用 close()方法关闭文件是一个很好的习惯。

    read()方法

    read()方法从一个打开的文件中读取一个字符串。需要重点注意的是,Python字符串可以是二进制数据,而不是仅仅是文字。

    fileObject.read([count])
    被传递的参数是要从已打开文件中读取的字节计数。该方法从文件的开头开始读入,如果没有传入count,它会尝试尽可能多地读取更多的内容,很可能是直到文件的末尾。

    write()方法

    •  write()方法可将任何字符串写入一个打开的文件。
    • Python字符串可以是二进制数据,而不是仅仅是文字。
    • write()方法不会在字符串的结尾添加换行符(' '):
    fileObject.write(string)

     with语句

    为了避免打开文件后忘记关闭,可以通过管理上下文,即:

    with open('log','r') as f:
        ...

    如此方式,当with代码块执行完毕时,内部会自动关闭并释放文件资源。

    以上代码等价于:

    f = open('log', 'r')
        ...
    f.close()

    在Python 2.7 后,with又支持同时对多个文件的上下文进行管理,即:

    with open('log1', 'r') as obj1, open('log2', 'r') as obj2:
  • 相关阅读:
    【转】Install libimobiledevice on Mac OSX
    【转】Mac端包管理工具——Homebrew简介及安装
    Appium的安装-Mac平台(命令行 & dmg)
    【转】NO.3、python+appium+ios,遍历真机元素,得到webview
    【转】NO.2、Appium之IOS第一个demo
    【转】NO.1、 appium之ios环境搭建
    如何在 iOS 真机运行 Appium
    【转】adb shell dumpsys 命令
    Mac下抓包工具charles及破解方法
    2017.08 笔记
  • 原文地址:https://www.cnblogs.com/tanrong/p/8463656.html
Copyright © 2011-2022 走看看