Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/318.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 缩进错误:未缩进与任何外部缩进级别不匹配_Python_Indentation - Fatal编程技术网

Python 缩进错误:未缩进与任何外部缩进级别不匹配

Python 缩进错误:未缩进与任何外部缩进级别不匹配,python,indentation,Python,Indentation,当我编译下面的Python代码时,我得到 缩进错误:未缩进与任何外部缩进级别不匹配 为什么?其他海报可能是正确的……标签中可能有空格。尝试执行搜索和替换,以用几个空格替换所有选项卡 试试这个: import sys def Factorial(n): # return factorial result = 1 for i in range (1,n): result = result * i print "factorial is ",result

当我编译下面的Python代码时,我得到

缩进错误:未缩进与任何外部缩进级别不匹配



为什么?

其他海报可能是正确的……标签中可能有空格。尝试执行搜索和替换,以用几个空格替换所有选项卡

试试这个:

import sys

def Factorial(n): # return factorial
    result = 1
    for i in range (1,n):
        result = result * i
    print "factorial is ",result
    return result

print Factorial(10)

其他海报可能是正确的…可能会有空间与您的标签混合。尝试执行搜索和替换,以用几个空格替换所有选项卡

试试这个:

import sys

def Factorial(n): # return factorial
    result = 1
    for i in range (1,n):
        result = result * i
    print "factorial is ",result
    return result

print Factorial(10)

行:
result=result*i
应该缩进(它是for循环的主体)


或者-混合了空格和制表符行:
result=result*i
应该缩进(它是for循环的主体)


或者-您混合了空格和制表符

您确定缩进空格中没有混合制表符和空格吗?(这将导致该错误。)


注意,建议不要在Python代码中使用制表符。看。您应该将Notepad++配置为插入制表符的空格。

您确定缩进空格中没有混合制表符和空格吗?(这将导致该错误。)


注意,建议不要在Python代码中使用制表符。看。您应该配置Notepad++为选项卡插入空格。

每当我遇到此错误时,都是因为我在编辑器中将选项卡和空格搞混了

每当我遇到这个错误时,都是因为我在编辑器中将选项卡和空格搞混了

要轻松检查选项卡/空格是否存在问题,实际上可以执行以下操作:

python -m tabnanny yourfile.py

或者,您可以正确设置编辑器,当然:-)

要轻松检查选项卡/空格是否存在问题,您实际上可以执行以下操作:

python -m tabnanny yourfile.py

或者您可以正确设置编辑器,当然:-)

看起来是缩进问题。在Python中,您不必匹配花括号,但必须匹配缩进级别

防止空格/制表符问题的最佳方法是在文本编辑器中显示不可见字符。这将为您提供一种防止和/或解决缩进相关错误的快速方法


此外,注入复制粘贴的代码是此类问题的常见根源。

看起来是缩进问题。在Python中,您不必匹配花括号,但必须匹配缩进级别

防止空格/制表符问题的最佳方法是在文本编辑器中显示不可见字符。这将为您提供一种防止和/或解决缩进相关错误的快速方法


此外,注入复制粘贴的代码是此类问题的常见根源。

如果使用Python的空闲编辑器,则可以按照类似错误消息之一中的建议执行:

1) 选择全部,例如Ctrl+A

2) 转到“格式->取消设置区域”

3) 再次检查缩进是否正确,保存并重新运行程序


我使用的是Python 2.5.4

如果您使用Python的空闲编辑器,您可以按照类似错误消息中的建议执行操作:

1) 选择全部,例如Ctrl+A

2) 转到“格式->取消设置区域”

3) 再次检查缩进是否正确,保存并重新运行程序


我使用的是Python 2.5.4,这可能是因为上面的函数没有以相同的方式缩进。 i、 e


这可能是因为上面的函数没有以相同的方式缩进。 i、 e


这是因为选项卡和空格混合在一起。 您可以删除所有空格,并将其替换为选项卡

或者, 试着这样写:

#!/usr/bin/python -tt

在代码的开头。这一行解决了制表符和空格之间的任何差异。

这是因为制表符和空格混合在一起。 您可以删除所有空格,并将其替换为选项卡

或者, 试着这样写:

#!/usr/bin/python -tt

在代码的开头。这一行解决了制表符和空格之间的任何差异。

在我的例子中,问题是Eclipse上pydev的配置


在我的例子中,问题是Eclipse上pydev的配置


如果使用记事本++,请使用扩展搜索模式“替换”以查找\t并替换为四个空格。

如果使用记事本++,请使用扩展搜索模式“替换”以查找\t并替换为四个空格。

重要信息
空格是首选方法-参见PEP008和。(这要感谢@Siha。)

对于
Sublime Text
用户:

升华文本设置为使用制表符进行缩进:
查看
-->
缩进
-->
将缩进转换为制表符

取消选中上面同一子菜单中的使用空格缩进的
选项。

这将立即解决此问题。

重要信息
空格是首选方法-参见PEP008和。(这要感谢@Siha。)

对于
Sublime Text
用户:

升华文本设置为使用制表符进行缩进:
查看
-->
缩进
-->
将缩进转换为制表符

取消选中上面同一子菜单中的使用空格缩进的
选项。

这将立即解决这个问题。

我昨天也遇到了同样的问题,那就是缩进错误,当时正在使用sublime文本编辑器。我花了好几个小时试图修复它,最后我把代码复制到VI文本编辑器中,它工作得很好。ps python对空格太敏感,请确保不要将空格和制表符混在一起。

我昨天也遇到了同样的问题,那是缩进错误,当时使用的是sublime文本编辑器。我花了好几个小时试图修复它,最后我把代码复制到VI文本编辑器中,它工作得很好。ps python对空格太敏感,请确保不要将空格和制表符混合使用。

如果使用Komodo editor,您可以按照类似错误消息中的建议执行操作:

1) 选择al
python -m tabnanny yourFile.py
>python
>>> help("yourFile.py")
def your_choice(answer):
    if answer>5:
        print("You're overaged")
    elif answer<=5 and answer>1: 
            print("Welcome to the toddler's club!")
    else:
            print("No worries mate!")
def foo(bar):
    # Some awesome temporary comment.
    # But there is actually nothing in the function!
    # D'Oh!
  File "foobar.py", line 69

                                ^
IndentationError: expected an indented block
def foo(bar):
    '' Some awesome comment. This comment could be just one space.''
def foo(bar):
    0
import sys

def Factorial(n): # Return factorial
  result = 0
  for i in range (1,n):
     result = result * i

  print "factorial is ",result
  return result
class junk: 
     """docstring is indented too much""" 
    def fun(): return