6文件处理
文件读写
创建文本文件
f= open("china-testing.github.io.txt","w+")
for i in range(10):
f.write("This is line %d\n" % (i+1))
f.close()
Open需要2个参数,要打开的文件和表示文件执行的权限或操作的种类字符串,这里"w" 表示写入和加号表示如果文件中不存在则会创建。常用的选项 还有 "r"表示读取, "a"用于追加。
for循环使用write函数将数据输入到文件中。我们在文件中迭代的输出是 "this is line number",%d表示显示整数。
最后关闭存储的文件的实例。
附加文件
f= open("china-testing.github.io.txt","a+")
for i in range(2):
f.write("Appended line %d\n" % (i+1))
f.close()
读取文件
f= open("china-testing.github.io.txt","r")
contents =f.read()
print(contents)
基于行读取文件
for line in open("china-testing.github.io.txt"):
print(line)
类似代码:
f = open("china-testing.github.io.txt")
for line in f.readlines():
print(line)
文件操作模式小结
模式 | 描述 |
---|---|
'r' | 默认模式。 读。 |
'w | '此模式打开文件进行写入。如果文件不存在,则会创建新文件。如果文件存在,则会先清空文件。 |
'x' | 创建文件。 如果文件已存在,则操作失败。 |
'a | '在附加模式下打开文件。如果文件不存在,则会创建新文件。 |
't' | 默认模式。 它以文本模式打开。 |
'b' | 以二进制模式打开。 |
'+' | 打开文件进行读写(更新) |
判断文件或者目录是否存在
os.path.exists(path)
import os.path
print ("File exist:"+str(os.path.exists('china-testing.github.io.txt')))
print ("File exists:" + str(os.path.exists('github.io.txt')))
print ("Directory exists:" + str(os.path.exists('myDirectory')))
os.path.isfile()
import os.path
print ("Is it File?" + str(os.path.isfile('china-testing.github.io.txt')))
print ("Is it File?" + str(os.path.isfile('myDirectory')))
os.path.isdir()
import os.path
print ("Is it Directory?" + str(os.path.isdir('china-testing.github.io.txt')))
print ("Is it Directory?" + str(os.path.isdir('..')))
pathlibPath.exists()
import os.path
print ("Is it Directory?" + str(os.path.isdir('china-testing.github.io.txt')))
print ("Is it Directory?" + str(os.path.isdir('..')))
文件拷贝
比较常用的有:
shutil.copy(src,dst)
shutil.copystat(src,dst)