目录
1. Python文件IO说明
Python文件IO操作涉及文件读写操作,获取文件后缀名,修改后缀名,获取文件修改时间,压缩文件,加密文件等操作。
2. 打开和关闭文件
Python 提供了必要的函数和方法进行默认情况下的文件基本操作。
2.1 open 函数
说明:使用Python内置的open()函数打开一个文件,创建一个file对象
语法:
file object = open(file_name [, access_mode][, buffering])
参数说明::
file_name:要访问的文件名称的字符串值。
access_mode:决定了打开文件的模式:只读,写入,追加等。默认文件访问模式为只读(r)。
buffering:如果buffering的值被设为0,就不会有寄存。如果buffering的值取1,访问文件时会寄存行。如果将buffering的值设为大于1的整数,表明了这就是的寄存区的缓冲大小。如果取负值,寄存区的缓冲大小则为系统默认。
3. 文件File对象属性
文件File对象有:
file.closed:
返回true如果文件已被关闭,否则返回false。file.mode:
返回被打开文件的访问模式。file.name:
返回文件的名称。file.softspace:
如果用print输出后,必须跟一个空格符,则返回false。否则返回- true。
3.1 close()方法
File 对象的 close()方法会刷新缓冲区里任何还没写入的信息,并关闭该文件,关闭后不能在写入操作。
语法:
fileObject.close()
3.2 write()方法
write()方法可将任何字符串写入一个打开的对象文件。Python字符串可以是二进制数据,也可以是文字,write()方法不会在字符串的结尾添加换行符(’\n’):
3.3 read()方法
read()方法从一个打开的对象文件中读取一个字符串。
4. 文件定位
- tell()方法可以知道文件内的当前位置,
- seek(offset [,from])方法可以改变当前文件的位置。
(Offset变量表示要移动的字节数。From变量指定开始移动字节的参考位置。
如果from被设为0,这意味着将文件的开头作为移动字节的参考位置。如果设为1,则使用当前的位置作为参考位置。如果它被设为2,那么该文件的末尾将作为参考位置)
5. 重命名和删除文件
这由python的os模块来实现相关操作,使用前需要先导入os模块,其具体有如下方法:
5.1 rename()方法:
rename()方法需要两个参数,当前的文件名和新文件名。
语法:
os.rename(old_file_name, new_file_name)
5.2 remove()方法
remove()方法删除文件,需要提供要删除的文件名作为参数。
语法:
os.remove(file_name)
6. 文件目录
文件目录操作,同样通过使用os模块实现创建,删除和更改目录等操作。
6.1 chdir()方法
chdir()方法来改变当前的目录。
语法:
os.chdir("newdir")
6.2getcwd()方法
getcwd()方法显示当前的工作目录。
语法:
os.getcwd()
6.3 rmdir()方法
rmdir()方法删除目录,目录名称以参数传递,在删除这个目录之前,它的所有内容应该先被清除。
语法:
os.rmdir('dirname')
7. 实战案例
7.1 创建文件夹
import os
'''
定义一个创建文件夹的方法
'''
def mkdir(path):
isexists = os.path.exists(path) #如果文件已经存在则用已存在的
if not isexists: #如果不存在则创建
os.mkdir(path)
mkdir('test.txt') #调用执行
运行结果:
到目录下查看已经创建了"test"文件夹
7.2 读取文件信息
读取该目录下的"file_test.txt"内的内容:
'''
定义一个读取文件信息的方法
'''
def openfile(filename):
f = open('file_test.txt','r',encoding='UTF-8') #打开文件
flist = f.read() # 读取文件信息
f.close() # 关闭文件
print(flist) # 打印读取的内容
openfile('file_test.txt')
运行结果:
7.3 写入文件信息
# demo1:清空内容后写入 w:写入
f = open("file_test1.txt","w",encoding="utf-8")
print(f.write("文件信息写入!"))
f.close() # 关闭文件
# demo2:在文件内容后追加写入 a:写入
f = open("file_test1.txt","w", "a", encoding="utf-8")
print(f.write("文件信息写入!"))
f.close
# # demo3:with关键字系统会自动关闭文件和处理异常
with open("file_test1.txt","w", "w") as f:
f.write("hello world!")
demo1结果:
其他运行基本如此,自行运行查看…