我不知道了。我已经挣扎了几个小时。 我在这里装有带有车轮传感器的pi2golite。 wheelCount()仍然无法正常工作(或者至少我不知道如何操作) 所以我一直在尝试寻找另一种解决方案。 我拥有的2台电机似乎以不同的速度运行。我希望看到数字可以改变每个电动机的速度,以便它们运行相同。
import pi2go, time
pi2go.init()
running = True
countL = 0
countR = 0
def counter1():
global countR
countR += 0
speed = 60
try:
pi2go.stepForward(50,10)
time.sleep(2)
print counter1()
print countL
finally:
pi2go.cleanup()
-> 当我尝试运行它时,电动机运转正常,并经过10步后关闭(因此必须进行计数)
它输出以下内容: 对于countL-> 0 对于counter1()->无
为什么没有?
答案 0 :(得分:0)
这是预期的行为。
如果您在Python Shell中运行代码,那么当您编写表达式时,Shell将打印表达式的结果。
对于函数调用,这是函数返回的内容。在Python中,每个函数都会返回一些信息。如果您没有指定<{>> 语句,则返回return
。有些shell不会 打印None
,但是无论如何,这样的调用的结果是None
。
因此,函数更新 None
,然后执行countR
(隐式)。这是函数调用的结果,因此外壳程序将其打印出来。如果您在没有外壳的情况下运行代码,则不会显示任何内容(因为根本没有内容)。
您可以让函数返回更新后的值。此外,您可能想增加该值,所以return None
:
+= 1