参数不在时显示错误消息

2024-10-04 11:26:41 发布

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

我有一个csv文件所在的目录。代码读取文件并根据文件中的数据创建直方图。你知道吗

我已经做了一个命令提示代码,在那里我可以输入参数,代码将通过csv文件查看我列出的参数是否在那里。我试图使它这样一个错误消息时,我会出现拼写错误的命令。如果第一个参数拼写正确而第二个参数拼写不正确,则下面的代码可以工作,但如果第一个参数拼写错误而第二个参数拼写正确,则不会显示错误消息。怎么了?你知道吗

示例:python untitled14.py“Folder”Are peripherine不显示Are的错误消息 但是python untitled14.py“Folder”Perimeter为Are显示错误

for x in arguments:  
    found_match = False
    for column in df:
        os.chdir(directory)
        if x.endswith(column): 
            found_match = True
            #histogram code
            continue
        else:
            pass
if found_match==False: 
    print files+" " + x + " does not exist"

Tags: 文件csv代码py命令消息for参数
1条回答
网友
1楼 · 发布于 2024-10-04 11:26:41

在循环逻辑中有不必要的东西(以及其他一些可疑的东西)。例如,三行continue; else: pass不起任何作用。你知道吗

最好的方法是重构代码,调用一个函数,如果所有参数都经过验证,该函数将返回True。你没有为此提供足够的代码,所以我会用以下方法来清理整个过程:

for x in arguments:  
    for column in df:
        os.chdir(directory)
        if x.endswith(column): 
            #histogram code
            break
    else:
        print "{0} {1} does not exist".format(files,x)
        break #or not, depending on what you want to do

如果for循环没有而不是break,这就利用了很少使用的for/else来做一些事情—在您的例子中,这是一个错误。你知道吗

如果你真的想让它可重用,你应该raise一个Exception而不是仅仅打印一个错误。你知道吗

相关问题 更多 >