本文将从多个方面对Python文件常用操作进行详细阐述。
一、文件读写
Python提供了丰富的文件读写操作方法,可以用于读取和写入文件中的内容。
1、读取文件内容:
with open('file.txt', 'r') as f:
content = f.read()
print(content)
2、写入文件内容:
with open('file.txt', 'w') as f:
f.write('Hello, world!')
二、文件拷贝与移动
Python可以通过shutil模块实现文件的拷贝和移动操作。
1、拷贝文件:
import shutil
shutil.copy('source.txt', 'destination.txt')
2、移动文件:
import shutil
shutil.move('old.txt', 'new.txt')
三、文件重命名与删除
Python可以使用os模块实现文件的重命名和删除。
1、重命名文件:
import os
os.rename('old.txt', 'new.txt')
2、删除文件:
import os
os.remove('file.txt')
四、文件搜索与遍历
Python提供了os模块和glob模块来进行文件搜索和遍历。
1、文件搜索:
import os
for root, dirs, files in os.walk('.'):
for file in files:
if file.endswith('.txt'):
print(os.path.join(root, file))
2、文件遍历:
import glob
for file in glob.glob('*.txt'):
print(file)
五、文件信息获取
Python可以使用os模块和os.path模块来获取文件的信息。
1、文件大小:
import os
size = os.path.getsize('file.txt')
print(size)
2、文件创建时间:
import os
import time
ctime = os.path.getctime('file.txt')
print(time.ctime(ctime))
六、文件压缩与解压
Python可以使用zipfile模块来实现文件的压缩和解压。
1、压缩文件:
import zipfile
with zipfile.ZipFile('archive.zip', 'w') as zipf:
zipf.write('file.txt')
2、解压文件:
import zipfile
with zipfile.ZipFile('archive.zip', 'r') as zipf:
zipf.extractall('extracted')
七、文件权限设置
Python可以使用os模块来设置文件的权限。
1、设置文件为只读:
import os
os.chmod('file.txt', 0o444)
2、设置文件为可写:
import os
os.chmod('file.txt', os.stat('file.txt').st_mode | stat.S_IWUSR)
八、文件路径操作
Python提供了os.path模块用于文件路径的操作。
1、获取文件名:
import os
filename = os.path.basename('/path/to/file.txt')
print(filename)
2、获取文件所在目录:
import os
dirname = os.path.dirname('/path/to/file.txt')
print(dirname)
九、文件编码
Python可以使用codecs模块进行文件编码的转换。
1、将文件编码为UTF-8:
import codecs
with codecs.open('file.txt', 'r', 'utf-8') as f:
content = f.read()
print(content)
2、将文件编码为GBK:
import codecs
with codecs.open('file.txt', 'w', 'gbk') as f:
f.write('你好,世界!')
十、其他文件操作
除了上述常用操作外,Python还提供了其他文件操作方法,如文件权限检查、文件是否存在等。
1、检查文件是否存在:
import os
if os.path.exists('file.txt'):
print('文件存在')
2、检查文件是否可读:
import os
if os.access('file.txt', os.R_OK):
print('文件可读')
以上是Python文件常用操作的详细阐述,希望能对你有所帮助。
原创文章,作者:ANSN,如若转载,请注明出处:https://www.beidandianzhu.com/g/7620.html