簡體   English   中英

計數器+ = 0顯示無pi2go

[英]countr += 0 shows none pi2go

我不知道了 我已經掙扎了幾個小時。 我在這里裝有帶有車輪傳感器的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()-> None

為什么沒有?

這是預期的行為

如果在Python Shell中運行代碼,則在編寫表達式時,Shell將打印表達式的結果

對於函數調用,這就是函數返回的內容。 在Python中,每個函數都會返回一些信息。 如果您指定return語句,則將返回None 某些shell 不會打印None ,但是無論如何,結果是此類調用None

因此,該函數更新 countR ,然后執行return None (隱式)。 這是函數調用的結果,因此外殼程序將其打印出來。 如果在沒有外殼的情況下運行代碼,則不會打印任何內容(因為根本沒有內容)。

您可以讓函數返回更新后的值。 此外,您可能想增加該值,所以+= 1

def counter1():
    global countR
    countR += 1
    return countR

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM