给定一批文件a.txt b.jpg c.jpg d.py e.txt f.py,按照文件后缀名,划分到不同的文件夹中,例如a.txt与e.txt进入txt文件夹中。移动文件方式:导入shutil模块,利用move()函数来移动文件。例如:shutil.move(file_name,extension),表示将移动文件名file_name进入文件夹名extension。
时间: 2023-12-03 07:42:32 浏览: 96
根据文件名移动文件
可以使用Python中的os模块和shutil模块来实现该功能。具体步骤如下:
1. 创建不同后缀名的文件夹,并获取当前目录下所有文件的列表。
```
import os
import shutil
# 创建文件夹
txt_dir = './txt'
jpg_dir = './jpg'
py_dir = './py'
if not os.path.exists(txt_dir):
os.makedirs(txt_dir)
if not os.path.exists(jpg_dir):
os.makedirs(jpg_dir)
if not os.path.exists(py_dir):
os.makedirs(py_dir)
# 获取当前目录下所有文件的列表
files = os.listdir('.')
```
2. 遍历文件列表,根据文件后缀名移动文件到对应的文件夹中。
```
for file in files:
# 获取文件后缀名
ext = os.path.splitext(file)[1]
if ext == '.txt':
# 移动到txt文件夹中
shutil.move(file, txt_dir)
elif ext == '.jpg':
# 移动到jpg文件夹中
shutil.move(file, jpg_dir)
elif ext == '.py':
# 移动到py文件夹中
shutil.move(file, py_dir)
```
完整代码如下:
```
import os
import shutil
# 创建文件夹
txt_dir = './txt'
jpg_dir = './jpg'
py_dir = './py'
if not os.path.exists(txt_dir):
os.makedirs(txt_dir)
if not os.path.exists(jpg_dir):
os.makedirs(jpg_dir)
if not os.path.exists(py_dir):
os.makedirs(py_dir)
# 获取当前目录下所有文件的列表
files = os.listdir('.')
# 遍历文件列表,根据文件后缀名移动文件到对应的文件夹中
for file in files:
# 获取文件后缀名
ext = os.path.splitext(file)[1]
if ext == '.txt':
# 移动到txt文件夹中
shutil.move(file, txt_dir)
elif ext == '.jpg':
# 移动到jpg文件夹中
shutil.move(file, jpg_dir)
elif ext == '.py':
# 移动到py文件夹中
shutil.move(file, py_dir)
```
注意,该代码要在包含这些文件的目录中运行,否则需要修改代码中的文件路径。同时,为了避免文件名重复导致的覆盖问题,建议使用类似“时间戳+原文件名”的命名方式。
阅读全文