Python学习笔记六--文件和输入输出
6.1文件对象
所有Python对文件的操作都是基于对文件对象的操作。那么就从文件对象的创建说起。open()[file()]提供初始化输入输出的接口。open()成功打开文件时会返回一个文件对象。
open()方法的语法:
file_object=open(filename,access_mode,buffering)
filename,表示要打开的文件名的字符串,可以是相对路径也可以是绝对路径。
access_mode,表示打开方式。常见有'r'、'w'、'a',分别表示读模式,写模式,追加模式。带+表示可读可写,带b表示以二进制方式操作。
buffering表示缓冲方式,0表示不缓冲,1表示缓冲1行,大于1的值作为缓冲区的大小。
6.2文件内建方法
6.2.1输入
read()方法用来读取字节到字符串中。最多读取给定个字节,默认情况没有size参数,文件将读取到文件末尾。
readline()方法读取打开文件的一行。然后整行包括行结束符,作为字符串返回。
readlines()方法读取所有的行,然后作为字符串列表返回。
6.2.2输出
write(),与read(),readline()相反它将文本数据或二进制数据块写入文件。
writelines(),接受一个字符串列表作为参数,将他们写入文件。
6.2.3文件内移动
seek()方法,可以在文件内移动文件指针到不同位置,默认值0表示文件起始,1表示从当前位置算起,2表示文件末尾算起。
text(),他可以告诉你当前文件指针在文件的位置,从文件头算起以字节为单位。
6.3文件迭代
如果想迭代文件我们首先想到的是将文件读取到列表或者其他序列中再进行迭代。
f=open('demo.txt','r')
stringList=f.readlines()
for eachstring in stringList:
...
但事实上文件对象也是可迭代的,于是就有了:
f=open('demo.txt','r')
for eachline in f:
...
6.4
close()通过关闭文件结束对它的访问。 编程中不在引用某文件时需要关闭,别问为什么。
fileno()方法返回打开的文件描述符。常用于底层操作。
6.5文件系统
对文件的访问大多通过OS模块实现。经常用到的对文件的操作有删除\重命名文件,遍历目录树,管理文件访问权限。另一个模块os.path模块可以完成一些针对目录名的操作。下面是一些常用的函数。
6.5.1 文件操作类
mkfifo(),创建命名管道。
remove(),删除文件。
rename(),重命名文件。
utime(),更新时间戳。
walk(),生成一个目录树下所有的文件名。
2、目录/文件夹
chdir(),改变当前工作目录。
chroot(),改变的当前进程的目录。
listdir(),列出制定目录的文件。
mkdir()/makedirs(),创建目录/创建多层目录。
rmdir()/removedirs(),删除目录/删除多层目录。
3、访问/权限
access(),检验权限模式。
chmod(),改变权限模式。
umask(),设置默认权限模式。
6.5.2 os.path中的路径操作函数
1、分隔
basename(),去掉路径名返回文件名。
dirname(),去掉文件名返回路径名。
split(),返回(dirname(),basename())元组。
2、信息
getatime(),返回最近访问时间。
getctime(),返回文件创建时间。
getmtime(),返回文件修改时间。
getsize(),返回文件大小。
3、查询
exists(),指定路径是否存在。
6.6相关模块
base64,提供二进制字符串和文本字符串的编码解码操作。
bianascii,提供二进制和ASCII字符串的编码解码操作。
bz2,访问bz2格式的压缩文件。
fileinput,提供多个文本文件的行迭代器。
shutil,提供高级文件访问功能。
tarfile,读写tar归档文件,支持压缩文件。
zipfile,读写zip归档文件的工具。
Python学习笔记六--文件和输入输出的更多相关文章
- python学习笔记(六)---文件操作与异常处理机制
文件读取 读取整个文件 要读取文件,需要一个包含几行文本的文件.下面首先来创建一个文件,它包含精确到小数点后30位的圆周率值,且在小数点后每10位处都换行: pi_digits.txt 3.14159 ...
- Python学习笔记六
Python课堂笔记六 常用模块已经可以在单位实际项目中使用,可以实现运维自动化.无需手工备份文件,数据库,拷贝,压缩. 常用模块 time模块 time.time time.localtime ti ...
- Python学习笔记之文件处理
1.打开和关闭 要打开文件可以使用函数 open(),它位于自动导入模块 io 中.函数将文件名作为唯一不可缺少的函数,并返回一个文件对象.它还有一个名叫 mode 的参数,用于指定文件模式,其可取值 ...
- [Python学习笔记]组织文件
shutil 模块 shutil 模块可以让我们很方便的在Python程序中复制.移动.改名和删除文件. 复制文件和文件夹 使用shutil.copy()来复制文件,该函数含两个参数,均为字符串格式的 ...
- python学习笔记(11):文件的访问与函数式编程
一.文本文件读写的三种方法 1.直接读入 file1 = open('E:/hello/hello.txt') file2 = open('output.txt','w') #w是可写的文件 whil ...
- Python学习笔记015——文件file的常规操作之一(文本文件)
1 什么是文件 文件是用于数据存储的单位 文件通常用来长期保存数据 读写文件是最常见的I/O操作.Python内置了读写文件的函数,用法和C是兼容的. 读写文件的功能都是由操作系统提供的,一般而言,操 ...
- python学习笔记(7)文件的访问与函数式编程
一.文件读写的3中方法 1.直接读入 fiel1=open('test.txt') file2=open('output.txt') while True: line=file1.readLine() ...
- Python学习笔记015——文件file的常规操作之三(标准输入输出文件)
1 标准输入输出文件 在Python中,模块sys中含有标准的输入输出文件 sys.stdin 标准输入方法(一般是键盘) sys.stdout 标准输出方法(到显示器的缓冲输出) sys ...
- Python学习笔记六:文件处理
一:打开文件 open(name,mode,[bufferSize]) name:文件路径 mode:文件打开方式 二:文件读取 read()方法:可以一次读取文件的全部内容,Python把内容读到内 ...
随机推荐
- opencv_形态学结构化元素对形态学图像处理的影响
场景 对大米预处理之后的二值图像做开运算再做canny边缘检测. python代码: # kernel = cv2.getStructuringElement(cv2.MORPH_ELLIPSE,(3 ...
- redis linux 基本命令
找到一个哥们 写的都是一步步打基础的学习东西 不光是知识也是学习方式 都值得学习.. reids 传送们-->> http://xuelianbobo.iteye.com/category ...
- Git push本地代码到新建远程仓库
快速搞定 1.git init #初始化本地仓库 2.git remote add origin https://git.oschina.net/redArmy/springboot-swagger ...
- 全情投入是做好工作的基础——Leo鉴书39
很多人都有:“内向的人则不擅长社交,只能会活得很封闭”的思想,于是不少内向的朋友要么认为只有扭曲自己的性格变得外向才能在社会上吃得开,才能很爽的行走职场:要么就决定完全封闭自己活在孤独之中,其实以上两 ...
- 使用iScroll和photoswipe写手机浏览图片的插件的几点经验
首先,当我知道我得到一个任务需要写一个在手机上能浏览图片的插件时,我第一想到了iScroll.它的左右滑动,上下滑动的效果在安卓手机上也能让用户有良好的体验,自己写也能方便控制. 我的需求是,插件要能 ...
- Coppersmith-Winograd 算法
转自:https://www.douban.com/group/topic/29658298/ 对正整数 $q$,定义张量 $T$,其对应的多项式为 $p(X,Y,Z)=\sum_{i=1}^q (X ...
- rsyslog 报 WARNING: rsyslogd is running in compatibility mode.
[root@localhost log]# uname -a Linux localhost.localdomain 2.6.32 #1 SMP Sun Sep 20 18:58:21 PDT 2 ...
- Creating a Background Service ——IntentService
The IntentService class provides a straightforward structure for running an operation on a single ba ...
- AC自动机学习笔记
AC自动机 ----多个模板的字符串匹配 字典树Trie加上失配边构成 插入操作:ac.insert(p[i],i);构造失配函数:ac.getFail();计算文本串T中每个模板串的匹配数:ac.f ...
- JavaScript ArrayBuffer浅析
时隔一年半,再次来到博客园.回首刚接触前端时所写的两篇随笔,无法直视啊~ --------------------------------------------------------------- ...