编译 Python 代码时 unindent does not match any outer indentation level 错误
unindent does not match any outer indentation level error when compiling the Python code
错误:
unindent does not match any outer indentation level
代码:
def confirmation(self):
if WebDriverWait(self.driver, 1000).until(
EC.visibility_of_element_located((By.CLASS_NAME, 'failed'))):
print("Checkout Failed!")
if WebDriverWait(self.driver, 1000).until(
EC.visibility_of_element_located((By.CLASS_NAME, 'succesful'))):
print("Checkout Succesful!")
我该如何解决这个错误?
第二个'if'的缩进与第一个不一致,多了一个space。在python中,您的缩进必须保持一致
基本上,您 可以 缩进的地方,第二个 'if' 与第一个 'if' 甚至与第一个 'print' 相同(在这种情况下,第二个 'if' 将在第一个 'if' 内)。第二个 'if' 的当前位置与之前的任何一个级别都不匹配,因此 python 会引发错误。
在 .until(
python 之后你有一个新行正在考虑这是一个新的代码行因此抛出错误。你的第二个 if 和 print 前面还有一个额外的 space。
def confirmation(self):
if WebDriverWait(self.driver, 1000).until(
EC.visibility_of_element_located((By.CLASS_NAME, 'failed'))):
print("Checkout Failed!")
if WebDriverWait(self.driver, 1000).until(
EC.visibility_of_element_located((By.CLASS_NAME, 'succesful'))):
print("Checkout Succesful!")
这个错误信息...
unindent does not match any outer indentation level
...表示您的代码块中的缩进有问题。
当缩进 [=52= 时混用 Tab 和 Space 字符时,通常会出现此错误]代码。
分析
当我复制你的代码块并执行时:
我遇到了同样的错误:
C:\Users\username\Desktop\directory\PyPrograms>class_in_python.py
File "C:\Users\Soma Bhattacharjee\Desktop\Debanjan\PyPrograms\class_in_python.py", line 26
def confirmation(self):
^
IndentationError: unindent does not match any outer indentation level
有一次,我删除了所有的空白和换行符,并为以下代码行再次分行,默认缩进似乎不同:
if WebDriverWait(self.driver, 1000).until(
EC.visibility_of_element_located((By.CLASS_NAME, 'succesful'))):
print("Checkout Succesful!")
解决方案
您需要修复以下行的缩进:
EC.visibility_of_element_located((By.CLASS_NAME, 'failed'))):
EC.visibility_of_element_located((By.CLASS_NAME, 'succesful'))):
You can find a relevant detailed discussion in
错误:
unindent does not match any outer indentation level
代码:
def confirmation(self):
if WebDriverWait(self.driver, 1000).until(
EC.visibility_of_element_located((By.CLASS_NAME, 'failed'))):
print("Checkout Failed!")
if WebDriverWait(self.driver, 1000).until(
EC.visibility_of_element_located((By.CLASS_NAME, 'succesful'))):
print("Checkout Succesful!")
我该如何解决这个错误?
第二个'if'的缩进与第一个不一致,多了一个space。在python中,您的缩进必须保持一致
基本上,您 可以 缩进的地方,第二个 'if' 与第一个 'if' 甚至与第一个 'print' 相同(在这种情况下,第二个 'if' 将在第一个 'if' 内)。第二个 'if' 的当前位置与之前的任何一个级别都不匹配,因此 python 会引发错误。
在 .until(
python 之后你有一个新行正在考虑这是一个新的代码行因此抛出错误。你的第二个 if 和 print 前面还有一个额外的 space。
def confirmation(self):
if WebDriverWait(self.driver, 1000).until(
EC.visibility_of_element_located((By.CLASS_NAME, 'failed'))):
print("Checkout Failed!")
if WebDriverWait(self.driver, 1000).until(
EC.visibility_of_element_located((By.CLASS_NAME, 'succesful'))):
print("Checkout Succesful!")
这个错误信息...
unindent does not match any outer indentation level
...表示您的代码块中的缩进有问题。
当缩进 [=52= 时混用 Tab 和 Space 字符时,通常会出现此错误]代码。
分析
当我复制你的代码块并执行时:
我遇到了同样的错误:
C:\Users\username\Desktop\directory\PyPrograms>class_in_python.py
File "C:\Users\Soma Bhattacharjee\Desktop\Debanjan\PyPrograms\class_in_python.py", line 26
def confirmation(self):
^
IndentationError: unindent does not match any outer indentation level
有一次,我删除了所有的空白和换行符,并为以下代码行再次分行,默认缩进似乎不同:
if WebDriverWait(self.driver, 1000).until(
EC.visibility_of_element_located((By.CLASS_NAME, 'succesful'))):
print("Checkout Succesful!")
解决方案
您需要修复以下行的缩进:
EC.visibility_of_element_located((By.CLASS_NAME, 'failed'))):
EC.visibility_of_element_located((By.CLASS_NAME, 'succesful'))):
You can find a relevant detailed discussion in