对于 - 否则与对于 ELIF



我认为 elif: 是

else:
     if:

但无法使用

对于 - ELIF:

对于 - 否则:如果:

在此代码中:

for line in source:
    change_next = False
    for dataset,artnr,revision in datasets:
        if dataset in line:
            change_next = True
            print "  **  " + dataset + " found"
            datasets.remove((dataset,artnr,revision))
            break
    else:
        if line.startswith("DstID:"):
            print line.replace("DstID:","").rstrip()
    if change_next and "Partno:" in line:
        destination.write("Partno: " + artnr + "n")
        print "Partno: " + artnr
    elif change_next and "Revno:" in line:
        destination.write("Revno:" + revision + "n")
        print "Revno:" + revision
    else:
        destination.write(line)

感谢您到目前为止的回复,我现在的问题是:这是这样做的方法吗? 如果一行中没有任何(已知)数据集,那么如果它是数据集,我想打印它?

elif:

是一个扩展到else: if的宏,它是一个语法元素,仅在if:语句的上下文中有效。通常,else: if会打开一个新的if块;但是,elif:不会这样做。

for else是一种特殊情况用法,与if elif结构不同。 无论如何,eliffor的上下文中并没有真正的意义,因为for else的含义是"如果我们完成了循环而没有中断,那就做这件事"。 这是二进制逻辑。 在这个二元决策的背景下,elif没有意义。

正确。 try .. except .. else中的else也是如此.

你引用的"else"与"for"命令相关联,而不是与"if"命令相关联。"Elif"只有在与"if"命令一起使用时才有意义。

使用"for"命令,

只有当"for"块没有被"break"命令过早结束时,才会执行"else"块,参见第4.4段。

相关内容

最新更新