错误:需要整数参数,g

2024-05-16 09:08:42 发布

您现在位置:Python中文网/ 问答频道 /正文

我刚从YouTube上复制了一些游戏代码。运行代码后,它会给出以下错误:

integers argument expected, got float

据我所知,问题是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)

Tags: integers代码import游戏youtubefoodsh错误
2条回答

如果它是旧代码,那么它就可以在python2上工作。你知道吗

python2中的整数除法产生另一个整数。你知道吗

在python3中,它生成一个float。你知道吗

您需要将除法的结果转换为整数(如果需要的话)。你知道吗

snk_x = int(sw / 4)
snk_y = int(sh / 2)

以及

food = [int(sh / 2), int(sw / 2)]

使用楼层分割//而不是普通分割/。后者在python3中总是导致一个float。你知道吗

w.addch应为整数。你知道吗

相关问题 更多 >