【发布时间】:2011-05-03 06:53:43
【问题描述】:
我对 Python 完全陌生,我一直在尝试用它制作一个斐波那契程序。
def fib(n):
print 'n =', n
if n > 1:
return n * fib(n - 1)
else:
print 'end of the line'
return 1
n = raw_input('Input number: ')
int(n)
fib(n)
当我尝试运行这个程序时,输入数字后出现以下错误:
输入数字:5
n = 5
Traceback(最近一次调用最后一次):
文件“fibonacci.py”,第 11 行,在
fib(n)文件“fibonacci.py”,第 4 行,在 fib 中
return n * fib(n - 1)TypeError:不支持的操作数类型 对于 -: 'str' 和 'int'
如果我运行解释器并只导入函数(没有后面的代码),提供 n 的值并以该值作为参数调用函数,它可以工作。
我尝试将输入转换为 int,因为我认为这是一个字符串问题,但没有骰子。我真的不知道我哪里出错了,所以如果你能对这个问题有所了解,将不胜感激。
我很想将问题标题更改为具体的内容,但我真的不知道问题是什么。
【问题讨论】:
-
下次请为问题提供有意义的标题
标签: python