python练习-随机与目录操作


"""
编写一个函数,获取指定的目录下的所有jpg格式的文件,然后随机的将其中指定数目的文件复制到另外指定的路径中
"""
import shutil
import os
import random

# 当前程序运行路径。
# cwddirStr = os.getcwd()
# 定义需要操作的原始数据文件夹
sourcedirStr = "page"
# 定义需要操作的指定文件夹目录
tagertdirstr = "pageCopy"
# 获取page路径下的所有文件,并返回一个文件列表
allfiles = os.listdir(sourcedirStr)
# 输出列表下所有的文件。
print(allfiles)
print("\n")
# 对文件列表中文件进行过滤
page_iterater = filter(lambda x: x[-4:] == ".jpg", allfiles)
# 输出符合特定格式的文件。
# 将迭代器转化为列表。
page_list = list(page_iterater)
print(page_list)
# print(allfiles)
to_copy_set = set()
# 设定需要随机复制的图片的数目
out_pics_int = 3
# 随机生成一组序号,用来标志用来输出的图片的序号。
while len(to_copy_set) < out_pics_int:
    # 注意随机数的生成包含所有起止数据。
    to_copy_set.add(random.randint(0, len(page_list) - 1))
# 将打印集合转化为列表并打印出来。
to_copy_list = list(to_copy_set)
print(to_copy_list)

# 将选定列表中的文件复制到指定目录。
for item in to_copy_list:
    # 拼接处新老文件的路径,并执行复制操作。
    old_path = os.path.join(sourcedirStr, page_list[item])
    new_path = os.path.join(tagertdirstr, page_list[item])
    shutil.copyfile(old_path, new_path)
    print("文件%s 复制完成。" % page_list[item])
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值