微:bit python Rock Paper Scissors调试

时间:2017-03-07 15:04:40

标签: python

我是Micro:bit python的初学者。我正在编写“Rock,Paper,Scissors'有得分系统的比赛。然而,它响应于摇动一次然后自动显示图片,即使没有人摇晃它。你能建议一种方法解决这个问题吗?

from microbit import *
import random

count = 0

paper = Image("99999:"
            "90009:"
            "90009:"
            "90009:"
            "99999")
rock = Image("00000:"
            "09990:"
            "09990:"
            "09990:"
            "00000:")
scissors = Image("00099:"
                "99090:"
                "00900:"
                "99090:"
                "00099:")
while True:
    while True:
        if accelerometer.is_gesture("shake"):
            display.clear()
            choice = random.randint(0, 2)
            if choice == 0:
                display.show(rock)
                break
            elif choice == 1:
                display.show(paper)
                break
            else:
                display.show(scissors)
                break
    while True:
        if button_a.is_pressed():
            count = count + 1
            display.scroll(str(count))
            break
        elif button_b.is_pressed():
            count = count - 1
            display.scroll(str(count))
            break
        elif pin0.is_touched():
            display.scroll(str(count))
            break

1 个答案:

答案 0 :(得分:0)

从我从文档中可以理解的,  尝试更改此行代码: if accelerometer.is_gesture("shake"):if accelerometer.was_gesture("shake"):

他们的差异,来自文档:
for is_gesture:

  

返回True或False以指示命名手势当前是否处于活动状态。

for was_gesture:

  

返回True或False以指示自上次调用以来指定的手势是否处于活动状态。