私は次のコードを実行しています。私は folder1、folder2、.repositoryの3つのフォルダをスキップします。フォルダの一部が存在しない場合Pythonの検索でディレクトリをスキップ
は、しかし、私はエラーを取得:
indentationerror:インデント解除は任意の外側のインデントレベルと一致していません
どのように私は、フォルダというスキップして検索し、そうでない場合でも、することができます現在は何のエラーもありませんか?ここに私のコード:
import re
import os
from os.path import join
comment=re.compile(r"<!--\s+\| Start of user code \(user defined modules\)\s+\|-->\s+<!--\s+\| End of user code\s+\|-->", re.MULTILINE)
tag="<module>"
for root, dirs, files in os.walk("."):
dirs.remove("folder1")
dirs.remove("folder2")
dirs.remove(".repo")
if "pom.xml" in files:
p=join(root, "pom.xml")
print("Checking",p)
with open(p) as f:
s=f.read()
if tag in s and comment.search(s):
print("The following file has been modified",p)
------ UPDATE:
import re
import os
from os.path import join
comment=re.compile(r"<!--\s+\| Start of user code \(user defined modules\)\s+\|-->\s+<!--\s+\| End of user code\s+\|-->", re.MULTILINE)
tag="<module>"
for root, dirs, files in os.walk("/home/temp/"):
dirs.remove("/home/temp/test1")
dirs.remove("/home/temp/test2")
dirs.remove("/home/temp/test3")
if "pom.xml" in files:
p=join(root, "pom.xml")
print("Checking",p)
with open(p) as f:
s=f.read()
if tag in s and comment.search(s):
print("The following file contains user code modules:-------------> ",p)
そして、ここで出力:
python /home/temp/test_folder/python_script_4.py
File "/home/temp/test_folder/python_script_4.py", line 12
if "pom.xml" in files:
^
IndentationError: unexpected indent
LAST UPDATE --------->
import re
import os
from os.path import join
comment=re.compile(r"<!--\s+\| Start of user code \(user defined modules\)\s+\|-->\s+<!--\s+\| End of user code\s+\|-->", re.MULTILINE)
tag="<module>"
for root, dirs, files in os.walk("/home/dlopez/temp/test_folder/"):
dirs.remove("/home/temp/test_folder/test1")
dirs.remove("/home/temp/test_folder/test2")
dirs.remove("/home/temp/test_folder/test3")
if "pom.xml" in files:
p=join(root, "pom.xml")
print("Checking",p)
with open(p) as f:
s=f.read()
if tag in s and comment.search(s):
print("The following file contains user code modules:-------------> ",p)
そして、私の出力:
python /home/temp/test_folder/python_script_5.py
Traceback (most recent call last):
File "/home/dlopez/temp/test_folder/python_script_5.py", line 8, in <module>
dirs.remove("/home/temp/test_folder/test1")
ValueError: list.remove(x): x not in list
ありがとうございました! :)
は
私はフォルダが存在する場合でも、最近、このエラーが出る:IndentationErrorは:期待しますインデントされたブロック – user2961008
このエラーはあなたの質問とは無関係です。ファイルのインデントが正しいことを確認しますか? – dunder
エラーはあなたの質問に関連していません、エラーはインデントに関連しています – danielfranca