python之OS模块实现《将某个目录下的所有文件,拷贝到桌面上的文件夹里》代码

# -*- coding:utf-8 -*-
"""
功能:将某个目录下的所有文件,拷贝到桌面上的文件夹里
时间:2019/9/30
"""

import os

aa = os.path.abspath("./a/b/c/d/d0abc.txt")    #获取当前目录

bb = os.path.abspath(os.path.join(aa,"../"))  #获取上上级目录
#print(bb)
cc = os.listdir(bb) # 获取目录下所有文件及目录
#print(cc)
new_path = "C:/Users/Administrator/Desktop/shy002/shy001" #新文件路径
if os.path.exists(new_path):
    #print(os.makedirs(new_path))
    #print("文件已存在")
    pass
else:
    os.makedirs(new_path)
for i in range(len(cc)):  #将cc目录下的所有文件拷贝到桌面上
    name = cc[i]
    if os.path.isfile(os.path.abspath(bb+cc[i])):  #cc必须跟踪路径
        #print("是一个文件")
        flag01 = name.find(".")#获取第一个.出现的位置,返回索引
        new_file = new_path + name[0:flag01]+"复制"+name[flag01:]
        #print(new_file)
        file_111 = open(bb+"/"+name)
        with open(new_file,"a+") as f:
            for iii in file_111.readlines():
                f.write(iii)

        file_111.close()
        print("Successful")
      

注意:(坑一和坑二不会引起程序发生报错)
坑一:需要判断new_path路径是否存在,如果不存在需要创建。不予判断的话,程序也能执行完成,但是拷贝的文件也没实现
坑二:判断CC[i]是不是一个文件,需要加上绝对路径,负责程序会判断它是一个相对路径,原因是由于cc[i]只穿进去了一个字符串
技巧:
在程序在多加print,可以方便调试

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值