Join在使用操作系统后抛出startswith error。

2024-09-29 17:13:19 发布

您现在位置:Python中文网/ 问答频道 /正文

只是一个测试脚本递归地循环到我的整个主目录。在我的测试服务器上,join命令抛出这个奇怪的错误。在

  File "print_idv3.py", line 20, in <module>
listDirs("/home/jelmer/")
  File "print_idv3.py", line 7, in listDirs
list_of_files=os.path.join(root,files)
 File "/usr/lib/python2.7/posixpath.py", line 66, in join
if b.startswith('/'):
AttributeError: 'list' object has no attribute 'startswith'

代码如下。文件和根目录根本不是空的,所以它应该可以工作。在

^{pr2}$

Tags: inpy命令服务器脚本linefileslist
1条回答
网友
1楼 · 发布于 2024-09-29 17:13:19

与其使用os.path.join()将字符串与数组连接,不如在for循环或列表理解中只使用两个字符串:

list_of_files = [os.path.join(root, f) for f in files]

不同之处在于,您分别连接每个路径,而不是使用整个数组,os.path不支持这一点。在

相关问题 更多 >

    热门问题