我有一个计算某些数学函数的函数。在调试中我想
def function(a, b, c):
"""
compute a numerical function of a, b, c
using complex math functions g, h
"""
d = g(a)
e = h(b, c)
return d*sin(e)
在main中,此函数被多次调用
for a in range(0, 50):
print d*e
该函数没有返回我的预期,我想看看中间变量d,e如何因不同的参数而变化。
我已经添加了简单的打印语句(print d,print e)来实现功能,但这并不方便,因为我想为a的每个值绘制d和e。有没有办法将d和e写入文件,以便在运行main.py之后我可以轻松加载输出并制作一个情节?
我也试过
def function(a, b, c):
"""
compute a numerical function of a, b, c
using complex math functions g, h
"""
d = g(a)
e = h(b, c)
logging.debug(str(d)+','+str(e))
return d*sin(e)
和
logging.basicConfig(filename='test.log',level=logging.DEBUG)
for a in range(0.0, 50.0):
print d*e
但我无法在任何地方找到日志文件。
干杯,迈克
答案 0 :(得分:0)
是的,有一种方法可以写入文件。
但首先,您确定for a in range(0.0, 50.0):
是否正确? range()接受整数值,而不是float。
无论如何,试试这段代码,使用:
def function(a, b, c):
"""
compute a numerical function of a, b, c
using complex math functions g, h
"""
d = g(a)
e = h(b, c)
with open('log.txt', 'w+') as mfile:
mfile.write('d: '+ str(d)+ " e: "+ str(e))
return d*sin(e)
将此.py放在一个文件夹中,然后通过终端运行。日志将在同一文件夹中创建。