使用shutil移动文件时出错

2024-01-10

我正在尝试创建一个简单的函数,查找以某个字符串开头的文件,然后将它们移动到新目录,但我不断从shutil“IOError:[Errno 2]没有这样的文件或目录:' 18-1.pdf'”,即使该文件存在。

import os
import shutil
def mv_files(current_dir,start):
    # start of file name
    start = str(start)
    # new directory ro move files in to
    new_dir = current_dir + "/chap_"+ start
    for _file in os.listdir(current_dir):
        # if directory does not exist, create it
        if not os.path.exists(new_dir):
                os.mkdir(new_dir)
        # find files beginning with start and move them to new dir
        if _file.startswith(start):
            shutil.move(_file, new_dir)

我是否错误地使用了shutil?

正确代码:

import os
import shutil
def mv_files(current_dir,start):
    # start of file name
    start = str(start)
    # new directory ro move files in to
    new_dir = current_dir + "/chap_" + start
    for _file in os.listdir(current_dir):
        # if directory does not exist, create it
        if not os.path.exists(new_dir):
            os.mkdir(new_dir)
       # find files beginning with start and move them to new dir
        if _file.startswith(start):
            shutil.move(current_dir+"/"+_file, new_dir)

您似乎没有提供完整路径shutil.move. Try:

if _file.startswith(start):
    shutil.move(os.path.abspath(_file), new_dir)

如果失败,请尝试打印_file, and new_dir以及结果os.getcwd()并将它们添加到您的答案中。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用shutil移动文件时出错 的相关文章

随机推荐

  • 当我使用中文 UITableview 单元格时会进行颜色混合

    当我启用模拟器调试选项 颜色混合图层 时 然后显示不同的结果如下 抱歉 我无法发布图片 https i stack imgur com NLRqh jpg https i stack imgur com NLRqh jpg https i
  • 如何在角度组件上方声明接口?

    我有一个带有从表单接收值的方法的组件 我想用一个接口来描述表单数据 但是 在运行时 ngserve 编译器告诉我该接口未知 Public property friendshipFormModel of exported class has
  • 关闭 Xamarin.Forms DisplayAlert

    有没有办法关闭 Xamarin Forms显示警报 https developer xamarin com guides xamarin forms user interface navigation pop ups 没有用户交互 没有Ca
  • jquery事件执行后如何保持页面滚动位置?

    我到处寻找答案 并找到了类似的问题示例 但答案不适用于我的场景 现实是我对此很陌生 因此我没有能力将我找到的答案应用于我的问题 问题 我有一个 Div 当单击缩略图时 Div 图像会通过 JavaScript jQuery 脚本替换为另一个
  • 删除每列(和相应行)中的异常值

    我的 Numpy 数组包含 10 列和大约 200 万行 现在我需要分别分析每一列 找到异常值 并从数组中删除整个相应行 所以我开始分析第 0 列 查找第 10 20 100 行的异常值 并删除这些行 接下来 我将开始分析现已修剪的数组中的
  • 如何在 Haskell 中编写恒定空间长度函数?

    规范的实现length a gt Int is length 0 length x xs 1 length xs 它非常漂亮 但由于使用线性空间而受到堆栈溢出的影响 尾递归版本 length xs length xs 0 where len
  • 如何在新的 Azure 门户(预览版)上向我的 VM 添加新终结点?

    如何在新的 Azure 门户 预览版 上向我的 VM 添加新终结点 在旧门户上 这很容易 并且有一个选项卡 但在新门户上 我找不到它 您可以在网络安全组部分找到它
  • R 中 setdiff() 函数的意外行为

    据我了解 setdiff 比较两个向量并给出一个向量中出现但另一向量中未出现的元素 如果是这样 那么给定这些向量 thing1 lt c 1 2 3 thing2 lt c 2 3 4 thing3 lt c 1 2 3 这是我的结果 se
  • 逻辑常量与物理常量之间的差异

    这两个术语有什么区别 为什么我需要mutable 物理 常量来自声明一个对象const 并且原则上可以通过将对象放置在只读存储器中来强制执行 因此它不能更改 尝试改变它会导致未定义的行为 它可能会改变 也可能不会 或者可能会触发保护故障 或
  • std::绑定到std::函数?

    我使用这个得到一个编译错误 std vector
  • JSON结果转字符串

    我有一个JsonResult工作正常 并从一些 POCO 返回 JSON 我想将 JSON 作为字符串保存在数据库中 public JsonResult GetJSON JsonResult json new JsonResult Data
  • Eclipse 如何在 Linux 中找到 JDK?

    我已经手动安装了Eclipse和jdk 我的 JAVA HOME 已设置 我可以运行java版本 and javac 版本命令 但是当我尝试运行 Eclipse 时 它 显示以下消息 A Java Runtime Environment J
  • 使用“输入”事件动态更改背景颜色

    我正在尝试使用 JavaScript 动态更改背景 使用事件监听器监听输入类型 颜色 字段上的 输入 当我从调色板中选择颜色后单击颜色输入字段时 背景颜色会正确更改 但是 我希望背景在用户滚动托盘时动态变化 而不仅仅是在他选择最终颜色时 希
  • 包含嵌入/发布的 Google 文档的 Iframe 的自动高度

    我有一个带有已发布的 Google 文档的 iframe 该文档的内容可能会发生变化 因此我想根据其内容自动调整 iframe 的高度 我找到了一些解决方案 但它们都需要访问子文档的头部 有谁知道如何做到这一点 您可以查看下面我使用的代码的
  • 在 Eclipse 中使用三星 Galaxy 5 作为设备

    我无法在 Eclipse 中使用我的 Samsung Galaxy 5 例如 将 s5 连接到我的计算机时 我无法调试我的应用程序 我在 设备 中看到该设备 但其未知或处于离线状态 我已经在开发者选项中激活了调试模式 它适用于三星 Gala
  • 用于修复损坏的序列化 PHP 数据的正则表达式/代码。

    我有一个巨大的多维数组 已由 PHP 序列化 它已存储在MySQL中 数据字段不够大 末尾已被切断 我需要提取数据 unserialize行不通 有人知道可以关闭所有数组的代码 重新计算字符串长度 手动处理的数据太多了 非常感谢 这是重新计
  • 附加到 asp.net 母版页中的默认标题

    我正在使用 MVC 将标题添加到带有内容占位符的母版页 默认的MVC母版页模板使用以下代码 当我尝试将默认文本添加到内容容器的前面时 它不会在最终呈现的页面中显示文本 我试图让页面显示带有附加 contentp
  • Jquery 滚动到具有相同类的下一个/上一个 div

    我有几个 div 都具有相同的类 帖子 并且我有一个简单的向上和向下导航
  • Python浮点精度和

    我在 python 中有以下数组 n 565387674 45 321772103 48 321772103 48 214514735 66 214514735 65 357524559 41 如果我将所有这些元素相加 我会得到 sum n
  • 使用shutil移动文件时出错

    我正在尝试创建一个简单的函数 查找以某个字符串开头的文件 然后将它们移动到新目录 但我不断从shutil IOError Errno 2 没有这样的文件或目录 18 1 pdf 即使该文件存在 import os import shutil