Python 的底层操作

*  其实Python的文件IO操作方法,和Linux底层的差不多
  • 打开

    f = open(filename , "r")
    后面的 "r" 是权限参数, 类似的还有下面的参数
    r 以只读的方式打开文件,文件流指针,会放在最前面
    rb 以只读的方式二进制形式打开文件,文件流指针会放在最前面
    f+ 以读写的方式打开一个文件,指针在头部
    rb+ 以读写的方式打开一个二进制文件,指针在头,写的数据,一定要是二进制数据
    w 以只写的方式,打开一个文件,如果文件存在,会将其覆盖,如果不存在,将会创建
    wb 以只写的方式,打开一个二进制文件,如果文件存在,会将其覆盖,如果不存在,将会创建,写的数据,一定要是二进制格式数据
    w+ 以读写的方式,打开一个文件,如果文件存在,会将其覆盖,如果不存在,将会创建
    wb+ 以读写的方式,打开一个二进制文件,如果文件存在,会将其覆盖,如果不存在,将会创建,写的数据,一定要是二进制格式数据
    a 打开一个文件用于追加数据,如果文件存在,文件流指针会放在结束,如果不存在,则创建
    ab 以二进制的方式打开一个文件用于追加数据,如果文件存在,文件流指针会放在结束,如果不存在,则创建
    a+ 打开一个文件用于追加数据,如果文件存在,文件流指针会放在结束,如果不存在,则创建
    ab+ 以二进制的方式打开一个文件用于追加数据,如果文件存在,文件流指针会放在结束,如果不存在,则创建
  • data = f.read(64)
    read([size]) 从文件 当前位置 起读出size个字节;若无参数size,则表示读取至文件结束为止。返回一个str
    readline() 每次读出一行内容。返回一个str
    readlines() 一次读出文件的所有行,保存在一个list中,每行作为一个元素。返回一个list
    linecache.getline(‘1.txt’, 2) 读出文件的第2行。返回一个str 可以用 with 进行读
    with open(filename, "r") as f:
    print(f.read())
    一次性将所有操作做完, open read, close
  • f.write(data)
    write() 将str(而不是数字)写入一个打开的文件。不会自动在字符串的结尾添加换行符(‘\n’)
    writelines() 将list(也可以是str)写入一个打开的文件。不会自动在字符串的结尾添加换行符(‘\n’) with open(filename , "w") as f:
    f.write(data)
    也可以一次性将所有数据,写进去,open write clone
  • close

    f.close()

python 文件 IO 操作的更多相关文章

  1. Python文件基础操作(IO入门1)

    转载请标明出处: http://www.cnblogs.com/why168888/p/6422270.html 本文出自:[Edwin博客园] Python文件基础操作(IO入门1) 1. pyth ...

  2. 文件IO操作

    前言 本文介绍使用java进行简单的文件IO操作. 操作步骤 - 读文件 1. 定义一个Scanner对象 2. 调用该对象的input函数族进行文件读取 (参见下面代码) 3. 关闭输入流 说明:其 ...

  3. Python文件IO

    Python文件IO 有如下文本内容,文件路径为D:\temp,文件名称为lyric.txt, line1 Look ! line2 If U had one shot line3 One oppor ...

  4. 树莓派学习笔记——使用文件IO操作GPIO SysFs方式

    0 前言     本文描写叙述假设通过文件IO sysfs方式控制树莓派 GPIO端口.通过sysfs方式控制GPIO,先訪问/sys/class/gpio文件夹,向export文件写入GPIO编号, ...

  5. Linux学习记录--文件IO操作相关系统编程

    文件IO操作相关系统编程 这里主要说两套IO操作接口,各自是: POSIX标准 read|write接口.函数定义在#include<unistd.h> ISO C标准 fread|fwr ...

  6. python文件相关操作

    Python文件相关操作 打开文件 打开文件,采用open方法,会将文件的句柄返回,如下: f = open('test_file.txt','r',encoding='utf-8') 在上面的代码中 ...

  7. linux文件IO操作篇 (一) 非缓冲文件

    文件IO操作分为 2 种 非缓冲文件IO 和 缓冲文件IO 它们的接口区别是 非缓冲 open() close() read() write() 缓冲 fopen() fclose() fread() ...

  8. imx6用文件io操作gpio

    具体请参考: http://blog.csdn.net/u014213012/article/details/53140781 这里要注意的是: 要让linux支持文件io方式操作gpio,首先驱动必 ...

  9. python文件高级操作

    python文件高级操作和注意事项等等 文件过大保护 由于read是一次性读取文件所有的内容,如果文件100G,内存就会吃不消,所以推荐使用read(size)一次读取指定字节/字符(根据rb,或者r ...

随机推荐

  1. Oracle 12C -- 设置CDB启动后,PDBs自动启动

    CDB重启后,PDBs默认是处于mounted状态 SQL> select name,open_mode from v$pdbs; NAME OPEN_MODE ---------------- ...

  2. ERROR: No query specified

    mysql中执行show命令的时候,提示以下信息: mysql> show variables like 'datadir'\G; *************************** 1. ...

  3. Android App解决卡顿慢之内存抖动及内存泄漏(发现和定位)

    内存抖动是指在短时间内有大量的对象被创建或者被回收的现象,内存抖动出现原因主要是频繁(很重要)在循环里创建对象(导致大量对象在短时间内被创建,由于新对象是要占用内存空间的而且是频繁,如果一次或者两次在 ...

  4. C++栈学习——顺序栈和链栈的差别

    C++中栈有顺序栈和链栈之分.在顺序栈中,定义了栈的栈底指针(存储空间首地址base).栈顶指针top以及顺序存储空间的大小stacksize(个人感觉这个数据成员是能够不用定义的) //顺序栈数据结 ...

  5. OPENSSL编程起步

    原文链接: http://blog.csdn.net/itmes/article/details/7711076 WINDOWS平台下OPENSSL的编译和安装使用 OPENSSL是开放源代码的,可以 ...

  6. Java 8 Stream – Read a file line by line

    In Java 8, you can use Files.lines to read file as Stream. c://lines.txt – A simple text file for te ...

  7. 配置eureka 老是报错connected time out 或者 refused connected

    报错信息总是连接错误,我指定了端口号,却不按照我指定的端口进行访问,而是访问eureka-server 的端口号是8761 ,这是因为配置有问题. 查看 类 EurekaClientConfigBea ...

  8. 有用的 Mongo命令行 db.currentOp() db.collection.find().explain() - 摘自网络

    在Heyzap 和 Bugsnag 我已经使用MongoDB超过一年了,我发现它是一个非常强大的数据库.和其他的数据库一样,它有一些缺陷,但是这里有一些东西我希望有人可以早一点告诉我的. 即使建立索引 ...

  9. ThinkPHP32 MODULE_ALLOW_LIST 存在的bug 不生效

    1)BUG: 假设存在Api Home Admin Member 模块.仅仅想让用户訪问 Api Home,不同意訪问Admin Member. 必须将Admin Member 写在 MODULE_D ...

  10. IOS 设备备份文件详解 (二)

    这篇主要讲解如何解析Manifest.mbdb文件. 使用二进制工具打开这个文件,文件的头6个字节是固定的,相当于是文件的一种标识 后面的内容是一个一个的项,可以使用一个循环来读取文件,一个一个解析. ...