python的新手,目前正在阅读diveintopython并试图从书中运行以下代码:
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)
现在当我点击回车时,Python shell说if
语句有语法错误?我正在运行Python 2.7。
答案 0 :(得分:3)
代码本身正在运行(我刚尝试过)。错误的可能原因是缩进不一致。您的行似乎以不同数量的空格(或制表符)开头。尝试将每个缩进行开头的空格更改为四个空格,然后再次尝试运行该脚本。
答案 1 :(得分:2)
错误在第5行:return
应缩进到函数开头"""
的水平。
但是,您不应该在shell中输入该代码 - 在文本编辑器中执行此操作。
答案 2 :(得分:0)
看起来你的缩进级别是错误的。看看你粘贴的代码,我猜你正在混合标签和空白,所以你使用的是“坏”编辑器。使用一个用空格替换制表符的编辑器。
答案 3 :(得分:0)