优秀的编程知识分享平台

网站首页 > 技术文章 正文

Python 解决Windows的路径长度限制为260个字符导致的失败

nanyue 2024-11-20 19:34:45 技术文章 7 ℃

1.问题

在Windows上使用 Python遇到打开长路径时候出错,文件路径太长了导致Windows下不能查询到文件,也就无从谈起了复制,移动,删除等文件操作。

2.解决方案1: 缩减文件路径的长度,没有从根本上解决,知识临时性解决了

3.解决方案2:想办法告诉电脑我的路径长度很长。具体操作是在绝对路径的前面加上“\\?\”就能告诉计算机我需要使用最大的路径长度,这样就不会出现路径太长而导致的无法操作的问题了。列如:

new_path = '\\\?\\'+old_path  # 就是在前面加 "\\?\",就OK了!

3.解决方案3:修改注册表,从根本上解决问题。(但是这只是在当前电脑上有效)将注册表值 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem@LongPathsEnabled 设置为 1。

在最新版本的Windows中,此限制可以扩展到大约32,000个字符。但需要管理员权限激活 “启用Win32长路径” 组策略,或将注册表值 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem@LongPathsEnabled 设置为 1

这允许 open() 函数 os 模块和大多数其他路径功能在使用字符串;

方案3Windows 启用长路径支持步骤:


1、打开注册表编辑器:regedit

2、找到如下路径:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSytem

3、找到如下键值:LongPathsEnabled

4、将值修改为1:默认是0,不启用。

4. 删除 MAX_PATH 限制在Windows上 启用长路径支持

win10启用长路径步骤:


win + r 找到并打开文件(本地组策略编辑器)C:\Windows\System32\gpedit.msc
依次点开 计算机配置>管理模板>系统>文件系统,找到“启用win32长路径”并双击打开
选择“启用”选项,然后单击“确定”;


退出,重启电脑即可;

原因

Windows系统本身默认不允许创建非常长的路径,那么有一些软件的安装(编译安装)等在创建长路径的时候会失败。

Tags:

最近发表
标签列表