Python 将整数添加到函数的输出中

Python 将整数添加到函数的输出中,python,Python,我正在尝试构建一个函数,该函数在每次调用时生成一个随机数,并将其转换为一个常量整数,我的函数如下所示: 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

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

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'
回溯(最近一次呼叫最后一次):
文件“/rungenesis.py”,第23行,在
nslice=nslice+offsetradf
TypeError:不支持+:“int”和“function”的操作数类型
任何帮助都会很棒。

阅读错误:)

nslice
是一个
int
offsetradf
是一个函数——您不是在调用它,而是在命名它。就这些

正确的成语:

nslice = nslice + offsetradf()

注意
()

你确定你没有做-
y=offsetradf
而不是
y=offsetradf()
nslice+=random.randint(0,7)
?实际上他做了
nslice=nslice+y
,并且
y
被分配了
offsetradf()
的值,就像在他的代码中一样。不知道其余的代码。在报告错误时,解释器不会替换您的姓名。我认为他引用的代码不是异常的来源
nslice = nslice + offsetradf()