Python 文件对象
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 文件对象的更多相关文章
- 4、Python文件对象及os、os.path和pickle模块(0530)
文件系统和文件 1.文件系统是OS用于明确磁盘或分区上的文件的方法和数据结构---即在磁盘上组织文件的方法: 文件系统模块:os 2.计算机文件(称文件.电脑档案.档案),是存储在某种长期储存设备或临 ...
- Python 文件对象和方法
Python文件对象和方法 1.打开和关闭文件 Python提供了必要的函数和方法进行默认情况下的文件基本操作,我们可以用file对象做大部分文件操作. open()方法 我们必须先用Python内置 ...
- Python文件对象方法
使用open()函数创建一个文件对象,这里是可以在这个对象上调用的函数的列表 - 编号 方法名称 描述 1 file.close() 关闭文件,无法读取或写入关闭的文件. 2 file.flush() ...
- python文件对象几种操作模式区别——文件操作方法详解
文件对象的字节模式/b模式(以utf-8编码为例) 读操作 写操作 指针操作 ASCII字节 返回bytes/字节类型的Ascii 写入bytes类型字节 例如:b'This is ascii' 使用 ...
- Python文件对象的访问模式
- Python自动化运维之4、格式化输出、文件对象
Python格式化输出: Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存.[P ...
- python 将文件描述符包装成文件对象
有一个对应于操作系统上一个已打开的I/O 通道(比如文件.管道.套接字等)的整型文件描述符,你想将它包装成一个更高层的Python 文件对象. 一个文件描述符和一个打开的普通文件是不一样的.文件描述符 ...
- Python(六)之文件对象
Python文件对象 明确文件系统: 获取文件对象: var_name = open(file_name[mode,[bufsize]]) 缓冲: 0:禁用 1:使用缓冲,只缓冲一行数据 2+:指定缓 ...
- 关于python 文件操作os.fdopen(), os.close(), tempfile.mkstemp()
嗯.最近在弄的东西也跟这个有关系,由于c基础渣渣.现在基本上都忘记得差不多的情况下,是需要花点功夫才能弄明白. 每个语言都有相关的文件操作. 今天在flask 的例子里看到这样一句话.拉开了文件操作折 ...
随机推荐
- Apache solr(一)
概念:Apache Solr 是一个开源的搜索服务器.Solr 使用 Java 语言开发,主要基于 HTTP 和 Apache Lucene 实现.Apache Solr 中存储的资源是以 Docum ...
- cassandra.yaml 配置 (非原创,侵删)
Copy from: http://blog.csdn.net/y_h_t/article/details/11917531 Cassandra中所有的运行配置都是在配置文件cassandra.yam ...
- java 解决时间相减问题
比如 Date currentTime ="2011-06-20 9:23:50"; Date endTime="2011-06-21 10:33:56"; 要 ...
- Node.js入门第一天
一.Node.js简介 1.1 简介 V8引擎本身就是用于Chrome浏览器的JS解释部分,但是Ryan Dahl这哥们,鬼才般的,把这个V8搬到了服务器上,用于做服务器的软件. Node.js是一个 ...
- asp.net core利用DI实现自定义用户系统,脱离ControllerBase.User
前言 很多时候其实我们并不需要asp.net core自带的那么复杂的用户系统,基于角色,各种概念,还得用EF Core,而且在web应用中都是把信息存储到cookie中进行通讯(我不喜欢放cooki ...
- 这 5 个前端组件库,可以让你放弃 jQuery UI
欢迎大家持续关注葡萄城控件技术团队博客,更多更好的原创文章尽在这里~~ 在建立Web应用时,通常都需要用到一些有用的UI组件.无论应用中需要的是日历,滑块,图形或其它用于提升或简化用户交互的组件,那么 ...
- 3D图片变换
1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="U ...
- HTML面试题
1.你做的页面在哪些流览器测试过?这些浏览器的内核分别是什么? 所谓的“浏览器内核”无非指的是一个浏览器最核心的部分-“Rendering Engine”,直译叫做“渲染引擎”,我们也常称为“排版引擎 ...
- 如何动态加载js文件,$.getScript()方法的使用
有时候我们需要动态在页面中加载js文件,jquery封装了getScript()方法,不用自己再创建标签了. 写法: $.getScript("name.js",function( ...
- RSA加密算法
class Program { static void Main(string[] args) { RSAPublicKey P = new RSAPublicKey(); P.Exponent = ...