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. WINFORM数据库操作,有点像安装里面的SQLITE

    程序设计要求 设计一个用户管理系统,对系统中的用户进行管理.假定,用户表中有下列字段:用户名,密码,电话和 email 等信息.要求,1)利用 SQL server 首先创建用户数据表:2)实现对用户 ...

  2. 镜像命名的最佳实践 - 每天5分钟玩转 Docker 容器技术(18)

    我们已经学会构建自己的镜像了.接下来的问题是如何在多个 Docker Host 上使用镜像. 这里有几种可用的方法: 用相同的 Dockerfile 在其他 host 构建镜像. 将镜像上传到公共 R ...

  3. CodeBlocks

  4. Creating beautiful charts in chinese with ggplot2

    Before we start My chinese skills are poor and biased. I did learn during my internship and I contin ...

  5. YII缓存依赖的应用

    YII缓存依赖的应用 缓存 缓存依赖 Yii 缓存是提升Web应用性能的简便有效的方式.当我们在加载网页需要过多的时间,比如说查询时间过久,抑或是调用接口占用过多I/O,建立缓存是一个行之有效的方法, ...

  6. css 中的背景图片小技巧和存在的坑

    body 的背景图设置 第一种 :这种情况下背景图片可以缩放 但是不能完全等比缩放 background: url(imgs/1.jpg)no-repeat; background-position: ...

  7. mysql之 MySQL 主从复制概述

    1 .主从复制简介MySQL 主从复制就是将一个 MySQL 实例(Master)中的数据实时复制到另一个 MySQL 实例(slave)中,而且这个复制是一个异步复制的过程.实现整个复制操作主要由三 ...

  8. eclipse在线安装s

    1. 打开eclipse软件,点击菜单栏的help-->Install New Software 2. 在弹出来的安装窗口中,点击add按钮,然后输入svn安装地址:http://subclip ...

  9. 模拟jquery底层链式编程

    //特点1:快级作用域,程序启动自动执行 //内部的成员变量,外部无法访问(除了var) //简单的函数链式调用 function Dog(){ this.run=function(){ alert( ...

  10. JMS 之 Active MQ 消息存储

    一.消息的存储方式 ActiveMQ支持JMS规范中的持久化消息与非持久化消息 持久化消息通常用于不管是否消费者在线,它们都会保证消息会被消费者消费.当消息被确认消费后,会从存储中删除 非持久化消息通 ...