歌者文明清理员 发表于 2023-4-1 18:23:32

整理地图

(有思路,但……运行结果乱)
这不是作业!是想开发的控制台小游戏
我有一个地图game_map,是一个一维列表。
定义getmap()函数,已知全局变量WIDTH, HEIGHT(整理后地图的长和宽),返回整理后的地图。
比如:
WIDTH = 4
HEIGHT = 4
game_map = [*range(1, 13)]
for line in getmap():
    print(line)
'''




'''

isdkz 发表于 2023-4-1 18:43:52

没听懂{:10_277:}

歌者文明清理员 发表于 2023-4-1 18:50:53

isdkz 发表于 2023-4-1 18:43
没听懂

看看示例输出。从右下角开始是索引0,到右下角的上面是索引-1,中间(非边缘)是值0

isdkz 发表于 2023-4-1 19:02:59

歌者文明清理员 发表于 2023-4-1 18:50
看看示例输出。从右下角开始是索引0,到右下角的上面是索引-1,中间(非边缘)是值0

你是要把从 1 到 16 按照绕圈圈的方式放到列表?

我之前解决过一个类似的帖子:https://fishc.com.cn/forum.php?mod=redirect&goto=findpost&ptid=223532&pid=6120760

歌者文明清理员 发表于 2023-4-1 20:11:29

isdkz 发表于 2023-4-1 19:02
你是要把从 1 到 16 按照绕圈圈的方式放到列表?

我之前解决过一个类似的帖子:https://fishc.com.c ...

没看懂{:10_282:}

andy大宝 发表于 2023-4-1 21:04:38

本帖最后由 andy大宝 于 2023-4-1 21:06 编辑


不知道您的意思是不是这样:
def getmap(WIDTH,HEIGHT):
    game_map = []
    make_list = []
    right_num = WIDTH + HEIGHT - 1
    left_num = right_num #这两个变量之后用来生成两侧数字
   
    #用嵌套列表模拟二维列表
    #生成顶部数字
    for i in range(WIDTH):
      make_list.append(right_num)
      right_num += 1
    game_map.extend()
      
    #生成两侧数字
    make_list = []
    right_num -= 1
    for i in range(HEIGHT - 2):
      left_num -= 1
      right_num += 1
      make_list.append(left_num)
      for i in range(WIDTH - 2):
            make_list.append(0)
      make_list.append(right_num)
      game_map.extend()
      make_list = []
      
    #底部逆序生成数字
    make_list = []
    for i in range(WIDTH):
      make_list.append(WIDTH - i)
    game_map.extend()

    #打印二维数组
    for i in game_map:
      print(i)
花了半个小时,代码有些繁琐,见谅{:10_266:}

歌者文明清理员 发表于 2023-4-2 10:09:38

andy大宝 发表于 2023-4-1 21:04
不知道您的意思是不是这样:

花了半个小时,代码有些繁琐,见谅

已解决
发一个空zip附件,定价随便,我买了,就当送你的鱼币(非常感谢!!!!!!!!!!!!)

傻眼貓咪 发表于 2023-4-2 11:18:17

纯粹练习练习{:5_91:}{:5_91:}{:5_91:}
def getmap(WIDTH, HEIGHT):
    MAP = [ for _ in range(HEIGHT)]
    row = + + +
    col = + + +
    p = zip(row, col)
    for n, (R, C) in enumerate(p, start = 1):
      MAP = n
    return MAP

andy大宝 发表于 2023-4-5 11:23:18

歌者文明清理员 发表于 2023-4-2 10:09
已解决
发一个空zip附件,定价随便,我买了,就当送你的鱼币(非常感谢!!!!!!!!!!!!)

如果是送鱼币的话就免了吧,感谢您对我的肯定^_^
页: [1]
查看完整版本: 整理地图