0

我正在尝试构建一个函数,该函数在每次调用时生成一个随机数并将其转换为一个常量整数,我的函数如下所示:

def offsetradf():
    global x
    x =  random.randint(0,7)
    return x
y = offsetradf()

以及稍后在代码中调用它时:

elif string.find(line,'nslice')==1:
       nslice = nslice+y
       output_file.write(' nslice = '+str(nslice)+'\n')

我收到的错误信息是:

Traceback (most recent call last):
File "./rungenesis.py", line 23, in <module>
nslice = nslice+offsetradf
TypeError: unsupported operand type(s) for +: 'int' and 'function'

任何帮助都是极好的。

4

1 回答 1

1

阅读错误:)

nslice = nslice+offsetradf
TypeError: unsupported operand type(s) for +: 'int' and 'function'

nslice是一个intoffsetradf是一个函数——你不是在调用它,你只是在命名它。这里的所有都是它的。

正确成语:

nslice = nslice + offsetradf()

注意().

于 2013-02-19T14:51:45.303 回答