使用Python中的in运算符在if语句中销毁字符串

时间:2015-04-08 13:06:40

标签: python string if-statement python-3.4 in-operator

我对以下Python代码有以下问题:

katalog = open(r"Katalog.txt", 'r')
katentrylist = open(r"katentrylist.txt", 'r')

for line in katalog:

    for element in katentrylist:
        if element in line:
            print(element)
            if clean6.search(element) != None:
                element = clean6.sub('', element)
            if clean7.search(element) != None:
                element = clean7.sub('', element)
            if clean8.search(element) != None:
                element = clean8.sub('', element)
            if clean9.search(element) != None:
                element = clean9.sub('', element)
            elementtxt = element + '.txt'
            with open(elementtxt, 'a') as d:
                d.writelines(line)
                d.close()

    elementtxt = ''
    check = ''

当我尝试执行print(element)语句时,使用in运算符在if-Statement之后变量元素为空。但是,我可以对行变量执行print语句或打印随机字符串。如果我使用任何其他if语句是真的,不使用in运算符,我也可以打印元素varibale。

是否有人对此行为有解释,可以给我一个提示,为什么会发生这种情况。

非常感谢!

0 个答案:

没有答案