age = int( input("请输入你的年龄:") ) if age < 18 : print("警告:你还未成年,不能使用该软件!") else: print("你已经成年,可以使用该软件。")本例中的 print() 函数和 if、else 语句是对齐的,在同一条竖线上,都没有缩进,所以 print() 就不是 if、else 的代码块了,这会导致 Python 解释器找不到 if、else 的代码块,从而报出如下错误:
SyntaxError: expected an indented block
翻译过来就是:语法错误:需要一个缩进的代码块
总之,if、else 后面的代码一定要缩进,否则就不能构成 if、else 的执行体。age = int( input("请输入你的年龄:") ) if age < 18 : print("你还未成年,建议在家人陪同下使用该软件!") print("未成年人如果得到了家长的同意,请忽略以上提示。") #忘记缩进这段代码并没有语法错误,但是它的运行逻辑是不对的,比如,输入 16 的运行结果如下:
请输入你的年龄:24↙
未成年人如果得到了家长的同意,请忽略以上提示。
age = int( input("请输入你的年龄:") ) if age < 18 : print("你还未成年,建议在家人陪同下使用该软件!") print("未成年人如果得到了家长的同意,请忽略以上提示。") #缩进量不对运行这段代码,Python 解释器会报出语法错误:
SyntaxError: unexpected indent
翻译过来就是:语法错误:意外的缩进
这段代码中,第一个 print() 语句缩进了 4 个空格,第二个 print() 语句缩进了 6 个空格,缩进量不同导致它们不是同一个代码块。Python 会认为第一个 print() 语句是 if 的执行体,而第二个 print() 是一个意外的存在,不知道该把它当做谁的代码块,所以解析失败,报错。info = "Python教程的网址是:http://task.lmcjl.com/python/" print(info)这两条简单的语句没有包含分支、循环、函数、类等结构,不应该使用缩进。
本文链接:http://task.lmcjl.com/news/9426.html