从编辑器粘贴多命令到CMD时字符丢失,脚本交替执行失败
批量执行Python脚本命令时出现异常
我正在使用argparse库测试一个处理多张图片的Python脚本,在记事本/VS Code中编写了以下命令:
python src\main.py -p 'complete\path\img1.jpg' python src\main.py -p 'complete\path\img2.jpg' python src\main.py -p 'complete\path\img3.jpg' python src\main.py -p 'complete\path\img4.jpg'
将这些命令粘贴到终端后,本该依次调用main.py处理每张图片,但实际执行时交替失败:
C:\Users\xxx\Desktop>python src\main.py -p "C:\Users\xxx\Desktop\Release\IMG_3515.JPG" expected result, Working... C:\Users\xxx\Desktop\BHUBRCAnalyzer>hon src\main.py -p "C:\Users\xxx\Desktop\Release\IMG_3516.JPG" 'hon' is not recognized as an internal or external command, operable program or batch file. C:\Users\xxx\Desktop>python src\main.py -p "C:\Users\xxx\Desktop\Release\IMG_3515.JPG" expected result, Working... C:\Users\x\Desktop\BHUBRCAnalyzer>hon src\main.py -p "C:\Users\x\Desktop\Release\IMG_3516.JPG" 'hon' is not recognized as an internal or external command, operable program or batch file.
我已尝试以下方法:
- 从不同编辑器(记事本和VS Code)复制命令
- 在命令之间添加额外换行
更新:排查后发现问题由ultralytics模块导致,注释掉该模块相关代码后问题消失,我的代码如下:
from ultralytics import YOLO import argparse def main(args:dict): model=YOLO() model(args['path']) if __name__=="__main__": arg_parser = argparse.ArgumentParser(fromfile_prefix_chars="@") arg_parser.add_argument("-p", "--path", help="path of the image to get feature", required=True) args = arg_parser.parse_args() main(args.__dict__)
内容的提问来源于stack exchange,提问作者PythonProcrastinator
相关产品推荐
相关产品推荐

