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()