1.函数名及其来源
这次来看读写文件相关的函数
open()打开一个文件对象
write()往里面写入东西
下面是一个写文件的例子
# 打开文件
fo = open("test.txt", "w")
print "文件名为: ", fo.name
str = "写点什么"
fo.write( str )
# 关闭文件
fo.close()
更为推荐的写法是:
str = "写点什么"
with open("test.txt", 'w') as f:
f.write(str)
2.函数定义源码及其用法拆解
math是非常常用的数学计算包,其中math.pow()语法如下
write() 方法语法如下:
fileObject.write( [ str ])
参数
str -- 要写入文件的字符串。
返回值
返回的是写入的字符长度。
对应的读取文件方法:
文件句柄 = open('文件路径', '模式')
打开文件时,需要指定文件路径和以何等方式打开文件,打开后,即可获取该文件句柄,日后通过此文件句柄对该文件操作。
打开文件的模式有:
r,只读模式(默认)。
w,只写模式。【不可读;不存在则创建;存在则删除内容;】
a,追加模式。【可读; 不存在则创建;存在则只追加内容;】
"+" 表示可以同时读写某个文件
r+,可读写文件。【可读;可写;可追加】
w+,写读
a+,同a
"U"表示在读取时,可以将 \r \n \r\n自动转换成 \n (与 r 或 r+ 模式同使用)
- rU
- r+U
"b"表示处理二进制文件(如:FTP发送上传ISO镜像文件,linux可忽略,windows处理二进制文件时需标注)
- rb
- wb
- ab
同样推荐用with 打开,当with代码块执行完毕时,内部会自动关闭并释放文件资源
with open("test.txt", 'r') as f:
print(f.read())
操作文件句柄的方法还有:
- f.read([size]) size未指定则返回整个文件,如果文件大小>2倍内存则有问题.f.read()读到文件尾时返回""(空字串)
- file.readline() 返回一行
- file.readline([size]) 返回包含size行的列表,size 未指定则返回全部行
- for line in f: print(line) #通过迭代器访问
3.版本差异
python2 有
file( ..... )或 open(.....)
python3
只能用 open(.....)
作为比较函数
4.学习建议
文件内容的读写是python自动化办公的基础。推荐上手掌握。
对基础运行环境有疑问的,推荐参考:python函数深入浅出 0.基础篇