python - 我的代码有什么问题?它不允许我用箭头键增加和减少心率
问题描述
我正在尝试制作一个程序,您可以在其中使用向上和向下箭头键来增加一个人显示的心率。
import curses
running = True
heart_rate = 1
key = curses.KEY_RIGHT
print(heart_rate)
if key == curses.KEY_UP:
heart_rate += 1
print(heart_rate)
elif key == curses.KEY_DOWN:
heart_rate -= 1
print(heart_rate)
while heart_rate != 200:
if heart_rate == 200 or heart_rate == 0:
quit()
它只是打印 1 然后不响应按箭头键。
解决方案
永远不会设置代码中的变量key
。
您还应该考虑阅读Python curses 文档以完全理解为什么不能print()
在 curses 上下文中使用。
这是您的算法的功能修订:
import curses
def test(stdscr):
heart_rate = 1
while heart_rate != 200:
stdscr.clear()
stdscr.addstr(2, 2, str(heart_rate))
stdscr.refresh()
key = stdscr.getch()
if key == curses.KEY_UP:
heart_rate += 1
elif key == curses.KEY_DOWN:
heart_rate -= 1
if not heart_rate:
break
if __name__ == "__main__":
curses.wrapper(test)
推荐阅读
- ios - 达到页面限制后,表格视图滚动到顶部加载更多不会停止加载
- scala - 在每次迭代的地图中获取修改后的列表
- php - PHP urldecode 一个可以被多次编码的字符串
- arrays - 将哈希转换为哈希数组
- retrofit2 - 改造格式错误的 URL
- azure - Grafana - Azure Application Insights - 筛选“消息”列
- python - 为什么滚动会引发 Selenium webdriver 异常?
- android - 找不到符号类 AccessFragmentInternals
- javascript - 对数字进行排序,使偶数在前
- c# - ASP.NET Core Azure AD Auth - 网络 Web 服务器的重定向 URI 不正确