简体   繁体   中英

IndentationError: expected an indented block

I have just started with python. I was executing a simple program given in 'Dive into Python' by Mark Pilgrim in Ubuntu. The program is as follows:

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)

But it is showing error as follows:

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

I have tried few things like giving a space in front of return on line 3, then instead of space using a tab. Can anybody help me in finding out what the error is about, why it has came, etc. and also with some easy tutorials with which a can go ahead.

Thanks in advance..

Try it like this:

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)

BTW: Do you understand the structure? Function, if __name__=="__main__": block etc.?

Why not read the Python documentation? It might help. ;)

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

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM