首页 > 解决方案 > 错误:需要整数参数,得到浮点数

问题描述

我刚刚尝试从 YouTube 复制一些游戏代码。运行代码后,出现以下错误:

需要整数参数,得到浮点数

在我看来,问题在于w.addch(food[0], food[1], curses.ACS_PI)线路。该怎么办?

import random
import curses

s = curses.initscr()
curses.curs_set(0)
sh, sw = s.getmaxyx()
w = curses.newwin(sh, sw, 0 , 0)
w.keypad(1)
w.timeout(100)

snk_x = sw/4
snk_y = sh/2
snake = [
    [snk_y, snk_x],
    [snk_y, snk_x - 1],
    [snk_y, snk_x - 2]
]

food = [sh/2,sw/2]
w.addch(food[0], food[1], curses.ACS_PI)

标签: pythonintegerarguments

解决方案


使用地板除法//而不是普通除法/。后者总是导致 Python 3 中的浮点数。

w.addch期待整数。


推荐阅读