前言
在关于神经网络的学习中,Python 是非常常见且易于掌握的编程语言之一。笔者在学习的时候发现神经网络会经常涉及到一些文件操作,比如获得文件的路径并拼接,之后进行数据集的分类和移动等等,经常会需要编写Python脚本进行文件操作。在 Python 中,os 模块提供了一系列用于文件和目录操作的常见命令。在这篇文章中,笔者会介绍一些常见的 os 模块相关的文件处理命令并附上示例代码。这些命令被分类为文件操作、目录操作、路径操作、权限操作和其他操作。其中文件、目录、路径操作和其他操作中的文件移动操作会被使用得非常频繁,建议大家优先了解这些命令并熟练掌握。
如果觉得该笔记对您有用的话,可以点个小小的赞吗,或者点赞收藏关注一键三连ヾ(◍’౪`◍) ~ 谢谢!!
文件操作
1. 检查文件是否存在:os.path.exists
import os
if os.path.exists('file.txt'):
print('File exists')
else:
print('File does not exist')
2. 删除文件:os.remove
import os
os.remove('file.txt')
3. 重命名文件:os.rename
import os
os.rename('old_name.txt', 'new_name.txt')
4. 获取文件大小:os.path.getsize
import os
file_size = os.path.getsize('file.txt')
print(f'File size: {file_size} bytes')
5. 读取文件内容:with open&r
with open('file.txt', 'r') as file: # ' r '- 只读模式
content = file.read()
print(content)
6. 写入文件内容:with open&w
with open('file.txt', 'w') as file:
file.write('Hello, World!')
目录操作
1. 检查目录是否存在:os.path.exists
import os
if os.path.exists('directory'):
print('Directory exists')
else:
print('Directory does not exist')
2. 创建目录:os.makedirs
import os
os.makedirs('new_directory', exist_ok=True)
# exists_ok意为当'new_directory'存在时,则不创建该目录
3. 删除目录:os.rmdir
import os
os.rmdir('directory') # 仅当目录为空时才可以删除
4. 列出目录内容:os.listdir
import os
files = os.listdir('directory')
print(files)
5. 获取当前工作目录:os.getcwd
import os
current_dir = os.getcwd()
print(f'Current directory: {current_dir}')
6. 改变当前工作目录: os.chdir
import os
os.chdir('new_directory')
路径操作
1. 获取文件的绝对路径:os.path.abspath
import os
abs_path = os.path.abspath('file.txt')
print(f'Absolute path: {abs_path}')
2. 分离文件路径和文件名:os.path.split
import os
dir_name, file_name = os.path.split('/path/to/file.txt')
print(f'Directory: {dir_name}, File: {file_name}')
3. 获取文件扩展名:os.path.splitext
import os
file_name, file_ext = os.path.splitext('file.txt')
print(f'File name: {file_name}, File extension: {file_ext}')
4. 连接路径:os.path.join
import os
full_path = os.path.join('directory', 'file.txt')
print(f'Full path: {full_path}')
权限操作
1. 更改文件权限:os.chmod
import os
os.chmod('file.txt', 0o755)
2. 更改文件所有者(需要管理员权限或在 UNIX 系统上运行):
import os
os.chown('file.txt', uid, gid)
其他操作
1. 获取文件的修改时间: os.path.getmtime
import os
import time
mod_time = os.path.getmtime('file.txt')
print(f'Modification time: {time.ctime(mod_time)}')
2. 复制文件(需要 shutil
模块):
import shutil
shutil.copy('source.txt', 'destination.txt')
3. 移动文件或目录(需要 shutil
模块):
import shutil
shutil.move('source.txt', 'new_location/source.txt')
结语
掌握 os 模块的文件和目录操作,可以大大提高我们处理文件系统相关任务的效率。无论是自动化脚本、数据处理,还是项目管理,这些技能都能助你一臂之力。希望本篇文章能够帮助大家更好地理解和应用这些常用命令。如果你有更多的需求,可以查阅 Python 官方文档,了解 os 模块更多的功能和用法。编程是一项需要不断学习和积累的技能,希望大家在实践中不断进步,享受编程带来的乐趣和便利!