我刚开始学习Python。我面临的问题是: 每当我在函数外部使用raw_input()时它工作正常,但每当我使用时 像这样的函数里面的raw_input函数给我一个错误。
def getinput(cost):
cost=raw_input('Enter a number ')
它给我一个缩进错误
答案 0 :(得分:3)
此错误与raw_input
无关。但是,您可能希望阅读indentation in Python。许多其他语言使用大括号(例如{
和}
)来显示程序的开头和结尾,或begin
和end
等关键字。相比之下,在Python中,您必须缩进代码,如下所示:
def getinput(cost):
cost = raw_input('Enter a number ')
所以如果你这样做没有缩进,例如
def getinput(cost):
cost = raw_input('Enter a number ')
...... Python会给你一个错误。
答案 1 :(得分:2)
在Python中,“空白”有所不同。缩进级别很重要,如果不适当缩进,代码将会出错。您可以阅读有关Python Whitespace here的更多信息,但我会给您一个摘要。
在Python中,当您运行程序时,它会通过所谓的Interpreter传递,它将您可以理解的代码转换为您的计算机可以理解的代码。对于Python,这个解释器需要缩进代码,因此它知道如何转换它。每次执行if
,else
,for
function
或class
(以及其他)时,您都需要增加缩进。
def getinput(cost):
cost = raw_input('Enter a number')
以上情况应该有效,而以下情况不会:
def getinput(cost):
cost = raw_input('Enter a number')
注意第一个示例是如何缩进的。祝学习Python好运!