• 拷贝图片


    地址是固定的,代码的功能是能实现复制一张图片到一个文件夹里面,也能将一个文件夹里面的所有的图片,按照图片的名字生成相对应的文件夹,并且在文件夹里面放置拷贝的图片
    主要用到的函数是:
    import shutil 这个是引入的模板
    shutil.copy(要复制的图片的地址,目的地址)

    具体的代码如下:
    import shutil
    import os

    def copy_photo():
    # 用来生成文件名称列表
    # 设置选择是复制单个图片,还是一个文件夹中的所有图片
    print("选择复制一张图片,还是复制一个文件夹中的所有图片")
    choice = input("一张图片输入one,文件夹中的所有图片输入all:")
    print(choice)
    if choice == "one":
    copy_single_photo()
    if choice == "all":
    copy_many_photo()
    if choice != "one" and choice != "all":
    print("请输入正确的需求")
    return

    def copy_single_photo():
    # 复制一张图片的函数,而生成的图片名称
    print("复制一张图片")
    #单个图片的地址
    single_photo_add = "D:\face_data\single_photo\huge.jpg"
    # 对上面的字符串进行分割,从而得到图片的名字
    split_add = single_photo_add.split("\")
    print(split_add[3])
    photo_name = split_add[3].split(".")[0]
    print(photo_name)

    # 通过文件名生成相对应的文件夹
    mkpath = "D:\face_data\many_photo" + "\" + photo_name

    # 判断文件名是不是已经存在
    isExit = os.path.exists(mkpath)

    if not isExit:
    # 创建文件夹
    os.makedirs(mkpath)
    print("创建成功"+mkpath)
    # 生成很多张图片名字
    photo_name_list = single_photo_name(mkpath)
    for i in range(0,1000):
    shutil.copy(single_photo_add,photo_name_list[i])
    print("成功复制第"+str(i)+"次")
    print(photo_name_list)
    else:
    print("文件已经存在了")
    return
    return


    def copy_many_photo():
    # 复制一个文件夹下的所有图片,而生成的图片名称
    print("复制一个文件夹下的所有图片")
    # 这个要读取文件里面的所有文件的名字
    folder_name = "D:\face_data\single_photo"
    file_name = os.listdir(folder_name)
    # print(file_name)
    for i in file_name:
    photo_name_add = folder_name + "\"+ i
    photo_name = i.split(".")[0]
    mkdir = "D:\face_data\many_photo" + "\" + photo_name
    isExit = os.path.exists(mkdir)
    if not isExit:
    os.makedirs(mkdir)
    else:
    print("文件夹已经存在")
    return
    photo_name_list = single_photo_name(mkdir)
    for i in range(0,1000):
    shutil.copy(photo_name_add,photo_name_list[i])
    print("成功复制"+photo_name+"的图片")
    return

    def single_photo_name(mkpath):
    print("创建文件名字")
    # 将文件名字放到一个列表中
    photo_name_list = []
    # 弄1000张图片
    for i in range(0,1000):
    name = mkpath + "\"+str(i)+".jpg"
    photo_name_list.append(name)
    return photo_name_list

    if __name__=="__main__":
    copy_photo()
     
  • 相关阅读:
    计数排序【代码】
    快速排序【代码】
    基于最大堆实现最大优先队列
    Spring入门(1)
    AJAX初步理解
    选择器
    Hibernate的映射
    Hibernate配置(2)
    查看mysql的安装路径
    Hibernate入门(1)
  • 原文地址:https://www.cnblogs.com/MyUniverse/p/10665219.html
Copyright © 2020-2023  润新知