python open 文件名过长报错No such file or directory

问题

今天遇到了个蛋疼的问题,大概是这样的:

json_str = {'a': 'b'}
filepath = './aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.json'
with open(filepath, 'w') as outf:
    json.dump(dict(json_str), outf)

按理说python找不到就会创建这个文件:aaaa…aaaaa.json,但是报错: No such file or directory

原因

不同操作系统对路径长度有不同的限制。在 Windows 上,路径长度限制是 260 个字符,而在 Linux 上则较长。如果路径长度超过了操作系统的限制,就会报 “No such file or directory” 错误。

解决方法

修改 Windows 注册表,路径为:计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem。将变量LongPathsEnabled改为 1 即可。

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-18 15:42:02       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-18 15:42:02       71 阅读
  3. 在Django里面运行非项目文件

    2024-07-18 15:42:02       58 阅读
  4. Python语言-面向对象

    2024-07-18 15:42:02       69 阅读

热门阅读

  1. 异步编程 进程 线程 协程(补充

    2024-07-18 15:42:02       22 阅读
  2. 【学习笔记】lambda表达式

    2024-07-18 15:42:02       20 阅读
  3. NVIDIA-TensorRT-Python推理

    2024-07-18 15:42:02       20 阅读