python - Python os.walk 返回码
问题描述
在我的应用程序中,我尝试遍历一组 fo 目录以查找某些文件。
for (dirpath, dirnames, filenames) in walk(path_to_network_share):
print(filenames)
break
遍历文件夹的实际尝试是通过调用os.walk来完成的。但是,即使没有连接到网络共享,os.walk也不会返回错误。我怎样才能发现错误?
解决方案
事实证明,我们可以提供一个函数作为可选参数('onerror'),它会收到一个 OSError 实例作为回报:
import os
def walk_error(os_error):
return(os_error) # [WinError 53] The network path was not found: '\\\\path\\dir\\'
for file in os.walk('\\\\path\\dir\\', onerror=walk_error):
print(file)
推荐阅读
- makefile - Makefile/Cmake 隐藏“冲突类型”错误
- reactjs - TypeError:store.getState 不是函数。(在 'store.getState()' 中,'store.getState' 未定义)
- sql-server - 如何使用 Laravel 创建多 sql server 身份验证用户
- visual-studio - Visual Studio 2019 类没有正确的复制构造函数 C++
- python-3.x - 有没有一种简单的方法可以使用 glom 从字典中获取未知键?
- amazon-web-services - 如何使用 Webpack 配置 AWS Codebuild
- php - php wordpress 在钩子内处理并将值同步到钩子外的变量
- ruby-on-rails - Mongo::Error::OperationFailure: $not need a regex or a document in rails mongoid
- python - 检查至少一个列表是否包含特定元素
- javascript - 更改子组件中的图像将更新父组件中更高的大多数 html img 标签