client.py:

server.py:(注意b" "和encode()和端口重用)
报错了端口会被占用的,只能尽量保证它不要报错



状态机:(注意if/else的bug)
每个状态机都有按下和松开的情况,除了S_INIT,触发它的只有按下, 所以不用考虑它的松开的情况,并且我们这里只用count来记录。第一次的判断肯定是pinValue,第二次if判断的也就是count的情况。
count是这么理解的,每次while跳进来后只会走一个if,state改变后就去到下一次while中,到下一次while的时候来判断是count++还是以一个状态走。记得回去的时候count清个0。还有一个要注意的是不要只局限于S0和S1,对于S1->S0->S1的情况和S1->S1->S1的情况新开一个STATE去记录它就好了,这样也可以避免陷入死循环。

Python的Hash:(应该是叫Dict)

博客围绕Python编程展开,提及client.py和server.py,强调server.py中b\ \、encode()及端口重用问题,避免端口占用报错。还阐述状态机,指出if/else可能存在的bug,说明了count的使用及状态记录方法。此外,提到Python的Hash(Dict)。
1万+

被折叠的 条评论
为什么被折叠?



