将目录解析为参数的问题

问题描述 投票:0回答:1

我有一个python程序,可循环访问目录中的所有文件,并以此作为参数。我还在python文件中设置了参数解析函数。当我尝试使用bash脚本和目录作为参数运行该python文件时,出现以下错误:

Traceback (most recent call last):
  File "main.py", line 93, in <module>
    args['inverse transformation path'], args['line'])
  File "main.py", line 68, in main
    transform_path, inverse_path, line)])
  File "main.py", line 65, in main
    for filename in os.listdir(image_directory):
NotADirectoryError: [Errno 20] Not a directory: 'test1/2020-03-11-11-45-37-576.jpg'

我正在使用以下命令运行python脚本:

python3 main.py -imd 'test1' -pp points.csv -rpp transformed_points.csv -tp transformation_matrix.csv 
-itp inverse_transformation_matrix.csv -l 2
python bash argparse
1个回答
0
投票

我们不知道您如何浏览文件系统,但是列出的文件显然不是目录,而是图像。像这样在检查之前添加安全检查:

if os.path.isdir(image_directory):
    for filename in os.listdir(image_directory):

我个人建议looking in to os.walk(),因为它可以为您完成此工作。

© www.soinside.com 2019 - 2024. All rights reserved.