python空闲fibonocci序列我的模型没有';行不通

python空闲fibonocci序列我的模型没有';行不通,python,Python,在这方面需要帮助,我尝试了一些东西,但由于某种原因它不起作用。我需要一些帮助来解决这个问题 def F(n): if n == 0: return 0 elif n == 1: return 1 else: return F(n-1)+F(n-2) F('3') 这里是原始问题-编写一个名为fib的函数,它以整数n作为参数,并返回Fibonocci序列中的第n个数字(见下面的定义)。如果n为零或负数,则函数应以字符串“error:Invalid input”的形式返回错

在这方面需要帮助,我尝试了一些东西,但由于某种原因它不起作用。我需要一些帮助来解决这个问题

def F(n):
    if n == 0: return 0
    elif n == 1: return 1
    else: return F(n-1)+F(n-2)
F('3')
这里是原始问题-编写一个名为fib的函数,它以整数n作为参数,并返回Fibonocci序列中的第n个数字(见下面的定义)。如果n为零或负数,则函数应以字符串“error:Invalid input”的形式返回错误消息


Fibonocci序列是
1,1,2,3,5,8,13,21,
,其中前两个数字是1,超过该数字的每个数字都被计算为前两个数字的总和(2=1+1,3=2+1,5=3+2,8=5+3,等等)

我想问题是您使用了字符串而不是整数。 尝试
F(3)
而不是
F('3')


或者首先提供有关错误的更多信息,对于应该打印的无效数字错误,我建议在中添加另一条if语句。下面的示例演示了如何设置任何负数以返回错误消息

    if n < 0: return "Error: Invalid Input"
如果n<0:返回“错误:无效输入”

对于F函数,它返回到数据类型。当你在某物周围加引号时,它指定了一个实际的字符串。当您只有一个数字时,它将是一个整数数据类型。为此,我们需要一个整数数据类型,因为我们需要对数字进行数学运算。这就是您应该删除引号的原因。

请添加错误消息BTW,您的函数没有调用“fib”,也不会返回零或负错误。我添加了它,将我得到的结果作为回溯(最近一次调用):文件“C:/Python34/fibonacci.py”,第9行,在F('3')文件“C:/Python34/fibonacci.py”,第6行,伊里夫n@ivakukovska在调用函数时,请确保已删除3周围的引号。谢谢,但我仍然没有得到我想要的结果发生了什么?你想要的结果是什么?啊。。。我累了,我明天会试试,但是谢谢你的帮助,你给我的所有信息都非常有用,再次谢谢