排除 for 循环中的项目

Excluding an item in a for loop

我正在尝试查找 FTP 服务器上根目录的总大小。但是,我无权访问根目录中的其中一个目录。

我想用这个函数对根目录的大小求和:

size = 0
for filename in ftp.nlst("."):
    ftp.cwd(filename)
    size += ftp.size(".")    
print(size)

这会产生错误:

ftplib.error_perm: 550 Could not get file size.

我找不到任何关于从 for 循环中排除项目的文档。

只捕获异常然后passcontinue,例如:

for filename in ftp.nlst("."):
    try:
        ftp.cwd(filename)
        size += ftp.size(".")    
    except ftplib.error_perm:
        pass
print(size)