python 从某个文件夹中挑选某些文件到新的文件夹

python 从某个文件夹中挑选某些文件到新的文件夹

背景

有时候我们想挑选出一些文件到新的地方,但手动挑选,按住ctrl这样效率偏低,所以使用python 帮我们复制到新文件里。

import os
import shutil
if __name__ =='__main__':
    pass
    #src_folder
    src = r'F:\\Desktop\test'
    #缺失的文件名称
    index = ['8.jpg','70.jpg','79.jpg','34.jpg','244.jpg','254.jpg','213.jpg','193.jpg','192.jpg','191.jpg','172.jpg','166.jpg','141.jpg','135.jpg','122.jpg','101.jpg']
    #列表的广播拼接可以么?
    for i in index:
        found_name = os.path.join(src,i)
        new_folder =r'F:\\Desktop\exp36g'
        shutil.copy(found_name, os.path.join(new_folder,i))
        print ("copy {} -> {}".format(found_name, os.path.join(new_folder,i)))

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 可以使用Python的os和shutil模块来实现对文件夹文件进行重编号。 首先,使用os模块的listdir函数获取文件夹的所有文件名,并将它们保存在一个列表。 然后,使用enumerate函数遍历这个文件列表,得到每个文件的索引和文件名。 接下来,构造一个文件名,可以使用字符串的格式化操作来实现,在文件插入编号。 最后,使用shutil模块的move函数将原文件改名为文件名。 下面是一个简单的示例代码: ```python import os import shutil def rename_files(folder_path): # 获取文件夹的所有文件名 file_list = os.listdir(folder_path) for i, file_name in enumerate(file_list): # 构造文件名 new_file_name = "file_{}.txt".format(i) # 使用shutil模块的move函数将文件改名 shutil.move(os.path.join(folder_path, file_name), os.path.join(folder_path, new_file_name)) print("文件编号完成!") # 调用函数对文件夹文件进行重编号 rename_files("文件夹路径") ``` 请将上述代码的"文件夹路径"替换为你实际的文件夹路径,并执行代码,即可实现对文件夹文件进行重编号。 ### 回答2: 在Python,我们可以使用`os`模块实现对文件夹文件进行重编号。 首先,我们需要使用`os.listdir()`函数获取文件夹的所有文件名,并保存在一个列表。 然后,我们可以使用`enumerate()`函数遍历该列表,并使用`os.rename()`函数对每个文件进行重编号。 具体步骤如下: ```python import os # 获取文件夹路径 folder_path = '文件夹路径' # 获取文件夹的所有文件名 file_names = os.listdir(folder_path) # 遍历文件名列表 for i, file_name in enumerate(file_names): # 构造文件名 new_file_name = f'{i+1}.txt' # 文件名的格式可以根据需要进行修改 # 构造文件的完整路径 file_path = os.path.join(folder_path, file_name) new_file_path = os.path.join(folder_path, new_file_name) # 对文件进行重编号 os.rename(file_path, new_file_path) print('文件夹文件已重编号') ``` 上述代码,`folder_path`是待处理文件夹的路径,`file_names`保存了文件夹的所有文件名。然后,使用`enumerate()`遍历`file_names`列表,并使用`os.rename()`函数将每个文件重命名为文件名。 注意,上述代码使用了f-string格式化字符串,其`i+1`表示文件编号。你可以根据需求修改文件名的格式。 最后,代码打印出一条消息,表示文件夹文件已重编号。 希望以上回答能够帮到你! ### 回答3: 对文件夹文件进行重编号,可以使用Python的os模块和shutil模块来实现。 首先,使用os模块的listdir函数获取文件夹的所有文件名。然后,使用enumerate函数对文件列表进行遍历,并对每个文件进行重编号。可以使用zfill函数来确保重编号的文件名在数字前面补零,以保持文件名的长度一致。 接下来,使用os模块的rename函数对原始文件进行重命名。将原始文件名与重编号后的文件名进行拼接并传递给rename函数即可。 最后,文件的路径可能发生了变化,可以使用shutil模块的move函数将重命名后的文件移动到正确的路径。 下面是一个示例代码: ``` import os import shutil # 定义文件夹路径和重编号的起始数字 folder_path = '文件夹路径' start_num = 1 # 获取文件夹所有文件名 file_names = os.listdir(folder_path) for i, file_name in enumerate(file_names): # 文件名的重编号 new_file_name = f'{start_num + i:03d}_{file_name}' # 保持文件名长度为3位,不足的地方用0补齐 # 重命名文件 os.rename(os.path.join(folder_path, file_name), os.path.join(folder_path, new_file_name)) # 移动文件到正确路径(如果需要) shutil.move(os.path.join(folder_path, new_file_name), '正确的文件夹路径') ``` 以上代码会将文件夹的每个文件编号,并将重命名后的文件移动到正确的路径。根据实际情况,你可以根据需要修改文件夹路径、重编号的起始数字以及正确的文件夹路径。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值