Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 添加计数器语句以每1分钟打印一次值_Python - Fatal编程技术网

Python 添加计数器语句以每1分钟打印一次值

Python 添加计数器语句以每1分钟打印一次值,python,Python,我试图通过增加一个变量(t)来运行一个小方程,但每500次只打印一次结果。我正在使用一个计数器函数和余数来指示何时有一个整数值,然后打印。在这段代码中,它不打印任何内容。如果我将计数器设置为“计数器=计数器+5”,它将运行并递增x 5,但每次都会打印。你能看出哪里出了问题吗?你可以看到我评论了一些我正在尝试的东西。我认为解决办法是这样的,但我想不出来 t = 0 counter = 0 #mass rocket = 4390 #mass fuel at launch = mass= 13000

我试图通过增加一个变量(t)来运行一个小方程,但每500次只打印一次结果。我正在使用一个计数器函数和余数来指示何时有一个整数值,然后打印。在这段代码中,它不打印任何内容。如果我将计数器设置为“计数器=计数器+5”,它将运行并递增x 5,但每次都会打印。你能看出哪里出了问题吗?你可以看到我评论了一些我正在尝试的东西。我认为解决办法是这样的,但我想不出来

t = 0
counter = 0
#mass rocket = 4390
#mass fuel at launch =
mass= 13000
v = 0
a = 0
d = 0
deltat=.001

#gd = gdisplay(x=0, y=0, width=100, height=4000, title='v vs. t', xtitle='t', ytitle='v',foreground=color.black, background=color.white, xmax=70, xmin=0, ymax=4000, ymin=0)
while (t<=65):
    t = t + deltat
    mass = 13000 - (130*t)
    v = v + ((1880*(130*deltat))/(mass))
    a = ((1880/(mass))*((130*deltat)/(deltat)))
    d = d + ((v*deltat)+((.5)*a*(deltat*deltat)))
    #counter += .001
    counter = counter + t
    #counter%5==0
    if counter %5 == 0:
        print (counter)
        print (t)
        print (v)
        #print a
        print (d)
t=0
计数器=0
#质量火箭=4390
#发射时的质量燃料=
质量=13000
v=0
a=0
d=0
deltat=.001
#gd=gdisplay(x=0,y=0,宽=100,高=4000,title='v vs.t',xtitle='t',ytitle='v',前景=color.black,背景=color.white,xmax=70,xmin=0,ymax=4000,ymin=0)

而(t增量计数器:

counter += 1
然后像这样打印

if counter % 500 == 0:
    print (counter)

我刚刚更新了我的问题-但让我试试你的建议-谢谢!在你的情况下,我需要定义“时间”还是导入它?我只是一个新手,只是想学习这个。我只想要一个简单的函数,用英语说“如果“t”是x的倍数的整数值,然后打印结果。”这里是示例输出,但它应该仅每500次打印一次。例如,5.0 0 0.001 0.01880018800188002 2.820028200282003e-05 10.0 0.002 0.03760056400940017 7.520103401598027e-05更新了我的答案。当Python递增t时,会出现浮点错误,例如,不完全是37.0,而是37.000000000000447。因此,请使用如图所示的计数器above.为了回答您更改后的问题,请在if语句上方放置“counter+=1”。只有当“counter=0”时,您才增加计数器然后计数器得到一个值1。然后它再也不会进入if语句进行更改…至于为什么它只打印一次。顺便说一句,如果您使用的是Python 3,
print
是一个函数,所以在
print
和括号之间不应该有空格。另一件事:您将
mass
定义为13000,然后定义为硬代码1300。这不是你想要的吗?你的循环将每500次迭代输入你的if语句。每500次迭代,你的t变量增加500*0.001=0.500。是的-你是对的,我认为它正在工作。非常感谢!!
t = 0
counter = 0
#mass rocket = 4390
#mass fuel at launch =
#mass= 13000
v = 0
a = 0
d = 0
deltat=.001

#gd = gdisplay(x=0, y=0, width=100, height=4000, title='v vs. t', xtitle='t', ytitle='v',foreground=color.black, background=color.white, xmax=70, xmin=0, ymax=4000, ymin=0)
while (t<=65):
    t = t + deltat
    mass = 13000 - (130*t)
    v = v + ((1880*(130*deltat))/(mass))
    a = ((1880/(mass))*((130*deltat)/(deltat)))
    d = d + ((v*deltat)+((.5)*a*(deltat*deltat)))
    counter += 1
    if counter % 500 == 0:
        print (counter)
        print(t)
        print(v)
        print(d)
counter += 1
if counter % 500 == 0:
    print (counter)