Python 文件对象

1)

内置函数 open() 用于打开和创建文件对象

open(name,[,mode[,bufsize]])
文件名、模式、缓冲区参数 mode:
r 只读
w 写入
a 附加
使用 + 同时支持输入、输出操作 r+ w+ a+
附加 b 表示以二进制方式打开 rb wb ab
bufsize:
0 禁用缓冲
1 使用缓冲,仅缓冲一行数据
负数 使用系统默认缓冲
正数 指定缓冲空间大小 例如: file1 = open('/etc/fstab',r+) 注意使用 r r+ 不能打开不存在的文件会产生IO错误

2)文件的属性

    f.closed        显示文件是否关闭
f.name 显示当前名称
f.encoding 编码格式
f.mode 当前文件打开模式
f.softspace 在使用print语句时,是否在一个值之前打印空格,默认为0。若需打印则 f.softspace = 1
f.newlines 返回到当前为止读取到的行结束符字串,若无行分隔符则为None

3)文件的方法

   f.tell()         当前指针在文件中字节位置        f.tell(0)
f.next() 迭代显示,不会移动指针
f.close() 关闭文件
f.fileno() 返回文件描述符
f.readline() 读取返回一行,会移动指针
f.readlines() 以列表形式返回所有行
f.read() 读n个字节 f.read(10)
f.write() 写入数据
注意: 文件方法read()等在读取文件时,会一并读取其行结束符
文件方法write()执行写出操作时,不会自动为其添加行结束符
f.writelines() 将列表中所有字串当做一行写入
import os
l1 = os.listdir('/etc')
f1.writelines(l1)
f1.flush()
以上输出为一行
l2 = [ i + '\n' for i in os.listdir('/etc')]
f1.writelines(l2)
f1.flush()
此方法会保证每个字串一行,用列表解析的方式在每次循环后加入换行符
f.isatty() 是否为终端设备文件
f.truncate() 截取n个字节
f1.truncate(10) 截取10个字节
f1.truncate(f1.tell()) 只截取到当前指针处
f.seek(offset[,whence]) 指针偏移位置
whence: 起点
0: 从文件头
1:从当前位置
2:从文件尾部
offset: 偏移量
f1.seek(0) 回到首部
f.flush() 清除输出缓冲区

Python 文件对象的更多相关文章

  1. 4、Python文件对象及os、os.path和pickle模块(0530)

    文件系统和文件 1.文件系统是OS用于明确磁盘或分区上的文件的方法和数据结构---即在磁盘上组织文件的方法: 文件系统模块:os 2.计算机文件(称文件.电脑档案.档案),是存储在某种长期储存设备或临 ...

  2. Python 文件对象和方法

    Python文件对象和方法 1.打开和关闭文件 Python提供了必要的函数和方法进行默认情况下的文件基本操作,我们可以用file对象做大部分文件操作. open()方法 我们必须先用Python内置 ...

  3. Python文件对象方法

    使用open()函数创建一个文件对象,这里是可以在这个对象上调用的函数的列表 - 编号 方法名称 描述 1 file.close() 关闭文件,无法读取或写入关闭的文件. 2 file.flush() ...

  4. python文件对象几种操作模式区别——文件操作方法详解

    文件对象的字节模式/b模式(以utf-8编码为例) 读操作 写操作 指针操作 ASCII字节 返回bytes/字节类型的Ascii 写入bytes类型字节 例如:b'This is ascii' 使用 ...

  5. Python文件对象的访问模式

  6. Python自动化运维之4、格式化输出、文件对象

    Python格式化输出: Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存.[P ...

  7. python 将文件描述符包装成文件对象

    有一个对应于操作系统上一个已打开的I/O 通道(比如文件.管道.套接字等)的整型文件描述符,你想将它包装成一个更高层的Python 文件对象. 一个文件描述符和一个打开的普通文件是不一样的.文件描述符 ...

  8. Python(六)之文件对象

    Python文件对象 明确文件系统: 获取文件对象: var_name = open(file_name[mode,[bufsize]]) 缓冲: 0:禁用 1:使用缓冲,只缓冲一行数据 2+:指定缓 ...

  9. 关于python 文件操作os.fdopen(), os.close(), tempfile.mkstemp()

    嗯.最近在弄的东西也跟这个有关系,由于c基础渣渣.现在基本上都忘记得差不多的情况下,是需要花点功夫才能弄明白. 每个语言都有相关的文件操作. 今天在flask 的例子里看到这样一句话.拉开了文件操作折 ...

随机推荐

  1. Java Synchronization

    Volatile Since Java 5 the volatile keyword guarantees more than just the reading from and writing to ...

  2. 关于STM32在程序中间修改PWM值的总结(原创)

    首先在STM32库函数里有这样一个函数 void TIM3_PWM_Init(u16 arr,u16 psc)   若TIM3_PWM_Init(7200,100)//设置频谱7200.分频100   ...

  3. javaWeb学习总结(9)- JSTL标签库之核心标签

    一.JSTL标签库介绍 JSTL标签库的使用是为弥补html标签的不足,规范自定义标签的使用而诞生的.使用JSLT标签的目的就是不希望在jsp页面中出现java逻辑代码 二.JSTL标签库的分类 核心 ...

  4. 从LINQ开始之LINQ to Objects(下)

    前言 上一篇<从LINQ开始之LINQ to Objects(上)>主要介绍了LINQ的体系结构.基本语法以及LINQ to Objects中标准查询操作符的使用方法. 本篇则主要讨论LI ...

  5. 红包项目总结---MVC版

    起因: 针对传统版的明显缺陷做优化.主要是提升可维护性. 效果  线上:  未发布 线下:http://10.27.5.1/svn/FED/code/hongbao/year-end   hb-fac ...

  6. Java中IO流的总结

    有关Java中IO流总结图 流分类 按方向分 输入流 输出流 按单位分 字节流 字符流 按功能分 节点流 处理流(过滤流) 其他 所有的流继承与这四类流:InputSteam.OutputStream ...

  7. Publishing failed with multiple errors.问题解决

    问题:Publishing failed with multiple errors.(发布失败与多个错误) 原因:项目工程文件删除,但eclipse里面仍显示存在. 解决方案:刷新项目工程,重新部署, ...

  8. Unexpected end of input 和 Unexpected token var 和 Unexpected token ;

    在写jsp的时候使用的一段代码一直调试,出现Unexpected token ; 错误. 所以最后把代码各种精简,得到了如下的测试示例代码 <% String aaa="123&quo ...

  9. 带着问题写React Native原生控件--Android视频直播控件

    最近在做的采用React Native项目有一个需求,视频直播与直播流播放同一个布局中,带着问题去思考如何实现,能更容易找到问题关键点,下面分析这个控件解决方法: 现在条件:视频播放控件(开源的ijk ...

  10. 【iOS】UIDynamicAnimator动画

    创建动画 UIDynamicAnimator *animator = [[UIDynamicAnimator alloc] initWithReferenceView:self.view]; 协议代理 ...