“int()参数必须为字符串、类似字节对象或数字,不能为’list’ Python python-tcod Rogueli”

2024-09-29 19:24:09 发布

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

我正在使用pythontocd rogulelike引擎制作一个类似流氓的游戏。我的游戏基于python libtcod roguelike教程。在

我在做一个常量列表,我用它来生成地图

game_map.make_map(constants['max_rooms'], constants['room_min_size'], constants['room_max_size'],
                  constants['map_width'], constants['map_height'],entities,player,
                  constants['maze_min_size'], constants['max_maze_rooms'], ['maze_max_size'])

现在我在函数中使用一些代码来确定房间的大小。在

^{pr2}$

我在这里定义了变量

map_width = 80
map_height = 45

room_max_size = 10
room_min_size = 6
max_rooms = 30

现在当我启动游戏的时候会出现这个?在

  File "C:/Users/Al Abraham/Documents/CaveRL/CaveRL/engine.py", line 466, in <module>
    main()
  File "C:/Users/Al Abraham/Documents/CaveRL/CaveRL/engine.py", line 445, in main
    player, entities, game_map, message_log, game_state, ggender = get_game_variables(constants)
  File "C:\Users\Al Abraham\Documents\CaveRL\CaveRL\initialize_new_game.py", line 115, in get_game_variables
    constants['maze_min_size'], constants['max_maze_rooms'], ['maze_max_size'])
  File "C:\Users\Al Abraham\Documents\CaveRL\CaveRL\map_objects\game_map.py", line 110, in make_map
    w = randint(room_max_size, room_min_size)
  File "C:\Python37\lib\random.py", line 222, in randint
    return self.randrange(a, b+1)
  File "C:\Python37\lib\random.py", line 184, in randrange
    istart = _int(start)
TypeError: int() argument must be a string, a bytes-like object or a number, not 'list'

我该怎么办?在


Tags: inpygamemapsizelineminusers
1条回答
网友
1楼 · 发布于 2024-09-29 19:24:09

使用int()函数时,必须有字符串或数字。这个错误说明至少有一个参数是列表,而不是数字。在

你应该检查你声明“w”变量的那一行,看来问题的根源不是来自room_max_size就是room_min_size。在

相关问题 更多 >

    热门问题