甜萝 发表于 2022-9-5 11:41

水一篇主题 随便写写

本帖最后由 paypojie 于 2022-9-5 11:48 编辑

                                                                                     将指定路径下的所有文件批量转移到其他路径

:lol : 看完某一视频后 想复现这种批量移动文件的方法

# 因为要对文件进行操作 所以先导入os模块
import os

# 将源路径下的文件批量转移到目标路径上
src = r'C:\p1'          # 源路径
target = r'C:\p2'       # 目标路径

# 将批量转移文件的方法封装为一个函数
def file_copy(src,target):

    # 进行条件判断 如果源路径和目标路径都是目录的话 就进入if循环 否则什么也不做
    if os.path.isdir(src) and os.path.isdir(target):

      # 将源路径下的文件名全部返回到列表中
      listfile = os.listdir(src)

      # for循环遍历包含文件名的列表
      for i in listfile:

            # 将目录路径和文件名连接 返回一个新路径
            path = os.path.join(src,i)

            # 以二进制读的方式打开一个文件
            with open(path,'rb') as rstream:

                # 对文件进行读取
                r1 = rstream.read()

                # 将目标路径和文件名连接 返回一个新路径
                path1 = os.path.join(target,i)

                # 以二进制写的方式打开一个文件 如果该文件不存在 则会创建一个文件
                with open(path1,'wb') as wstream:

                  # 将读取到的写入到目标路径的文件中
                  wstream.write(r1)

      # for正常循环遍历所有文件之后 会输出简短提示语
      else:
            print('结束')

# 调用函数
file_copy(src,target)
win11 资源文件管理器截图

源路径


目标路径


然后 在cmd下执行文件 由于py文件不在cmd目录下 所以不能直接使用 python xxx.py 这种方式




当python文件没有直接在cmd目录下我这个cmd目录是 C:\Users\33943有两种方法一种是 python 绝对路径   (绝对路径含有python文件名 例如 python C:\Users\33943\.cache\测试.py)
还有一种方法就是 cd 绝对路径   ( 绝对路径不含有python文件名 绝对路径是py文件所在的目录 )   python 文件名例如 cd C:\Users\33943\.cache然后再输入 python 测试.py

Null666yyds 发表于 2022-9-5 11:53

学会了,感觉效率可以大大提升,哪天去试试:lol

甜萝 发表于 2022-9-5 11:58

Null666yyds 发表于 2022-9-5 11:53
学会了,感觉效率可以大大提升,哪天去试试

这个简单 有时间就去尝试呗{:301_1001:}

Jerrywang 发表于 2022-9-5 14:59

很不错,顶一下

甜萝 发表于 2022-9-5 16:53

Jerrywang 发表于 2022-9-5 14:59
很不错,顶一下

加油 。。。

bean0283 发表于 2022-9-5 17:42

哈哈哈。我一直有这个需求,之前就在网上找了个代码自己稍微改改了,然后就自用了,挺好用
‪C:\Users\Administrator\Desktop\2%5BGVNDDO545$IM6}UQTFI$R.png

甜萝 发表于 2022-9-5 18:01

bean0283 发表于 2022-9-5 17:42
哈哈哈。我一直有这个需求,之前就在网上找了个代码自己稍微改改了,然后就自用了,挺好用

哈哈 没细看{:301_998:}
页: [1]
查看完整版本: 水一篇主题 随便写写