Satan灬 2023-03-29 12:02 采纳率: 0%
浏览 549
已结题

NotADirectoryError: [WinError 267] 目录名称无效

File "C:\……\base.py", line 16, in lookup_dll
for name in os.listdir(path):
NotADirectoryError: [WinError 267] 目录名称无效。: 'D:\Code\ModLs\fonttools.exe'

目录下的D:\Code\ModLs\fonttools.exe是有的,为什么会报错呢?
-/-
(分隔符)
-/-
解决:
首先我去文件里看源码看了半天,也没找到错误
找资料看了很多类似问题,也没解决
-
后来我一想,为啥其他人没问题,偏偏你fonttools.exe出问题呢
-
突然我想到了输入格式问题
有没有可能是程序运行到这个点的时候不应该是exe这种格式
-
接着我找了os.listdir'os.mkdir'os.makedir三个的用法才发现这个地方要检测的是文件夹目录
-
又看到这个地方传入的是PATH路径,我就去找第三方库PATH路径设置的资料
-
终于发现是PATH路径设错了,系统变量PATH里面存第三方库的路径只用到所处文件夹就行了
-
但是我初用python不知道(……)
-
改了PATH路径就好了

  • 写回答

2条回答 默认 最新

  • H3T 2023-03-29 12:25
    关注

    报错的原因是 NotADirectoryError: [WinError 267] 目录名称无效。: 'D:\Code\ModLs\fonttools.exe'。
     
    意思是指 D:\Code\ModLs\fonttools.exe 这个路径不是一个目录,而是一个文件,因此 os.listdir() 无法处理该路径。
     
    在代码 windows_find_lib() 中,使用了 os.listdir() 函数读取一个文件夹下的所有文件,但是当参数所指定的路径不是一个目录时,就会报 NotADirectoryError 错误。
     
    建议检查上述路径是否正确,如果是文件路径则需要改为文件所在文件夹的路径。另外,如果 D:\Code\ModLs\fonttools.exe 是一个可执行文件,可以尝试将其添加到系统的环境变量中,或者将其放到 Python 的 Scripts 文件夹下,这样 Python 就可以找到该文件。
     
    如果答案对您有所帮助,望采纳。

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 3月30日
  • 修改了问题 3月30日
  • 修改了问题 3月30日
  • 修改了问题 3月30日
  • 展开全部

悬赏问题

  • ¥15 oracle集群安装出bug
  • ¥15 关于#python#的问题:自动化测试
  • ¥20 问题请教!vue项目关于Nginx配置nonce安全策略的问题
  • ¥15 教务系统账号被盗号如何追溯设备
  • ¥20 delta降尺度方法,未来数据怎么降尺度
  • ¥15 c# 使用NPOI快速将datatable数据导入excel中指定sheet,要求快速高效
  • ¥15 再不同版本的系统上,TCP传输速度不一致
  • ¥15 高德地图2.0 版本点聚合中Marker的位置无法实时更新,如何解决呢?
  • ¥15 DIFY API Endpoint 问题。
  • ¥20 sub地址DHCP问题