缩进错误:期望有一个缩进块

-1 投票
2 回答
5663 浏览
提问于 2025-04-17 15:28

我刚开始学习Python。在Ubuntu上运行Mark Pilgrim的《Dive into Python》中的一个简单程序。这个程序如下:

def buildConnectionString(params):

    """Build a connection string from a dictionary of parameters.
    Returns string."""
    return ";".join(["%s=%s" % (k, v) for k, v in params.items()])
    if __name__ == "__main__":
    myParams = {"server":"mpilgrim", \
    "database":"master", \
    "uid":"sa", \
    "pwd":"secret" \
    }
    print buildConnectionString(myParams)

但是它显示了如下错误:

  File "./1.py", line 3
    Returns string."""
                     ^
IndentationError: expected an indented block

我尝试了一些方法,比如在第3行的return前面加一个空格,然后又试着用制表符代替空格。有没有人能帮我找出这个错误是什么,为什么会出现这个错误,还有一些简单的教程让我继续学习?

提前谢谢大家!

2 个回答

1

试试这样做:

def buildConnectionString(params):
    """Build a connection string from a dictionary of parameters.
    Returns string."""
    return ";".join(["%s=%s" % (k, v) for k, v in params.items()])

if __name__ == "__main__":
    myParams = {"server":"mpilgrim", \
    "database":"master", \
    "uid":"sa", \
    "pwd":"secret" \
    }
    print buildConnectionString(myParams)

顺便问一下:你明白这个结构吗?比如函数、if __name__=="__main__": 这个部分等等?

0

为什么不看看Python的文档呢?这可能会对你有帮助哦。;)

http://docs.python.org/2/reference/lexical_analysis.html#indentation

撰写回答