次の 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 ステートメントを使用すると、要素変数を出力することもできます。
誰かがこの動作の説明を持っていて、なぜこれが起こるのかヒントを教えてくれますか.
どうもありがとう!