0

次の 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 ステートメントの後で変数要素が空になります。ただし、行変数の print-statement を実行したり、ランダムな文字列を出力したりすることは可能です。in 演算子を使用せずに、真である他の if ステートメントを使用すると、要素変数を出力することもできます。

誰かがこの動作の説明を持っていて、なぜこれが起こるのかヒントを教えてくれますか.

どうもありがとう!

4

0 に答える 0