覆盖列表中的字符串会覆盖多个列表

2024-04-25 21:43:10 发布

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

我想创建并打印一个坐标系,在这里我可以插入一个点——我想使用列表理解和类来实现这一点——用于学习目的。当我试图覆盖电路板中的一个字符串(列表中的'-')时,所有高于给定y值的位置(我想要点的位置)都将变成点。像这样:

(产出)

dot position = (12, 5)
-  -  -  -  -  -  -  -  -  -  -  -  -  - 
-  -  -  -  -  -  -  -  -  -  -  -  -  -
-  -  -  -  -  -  -  -  -  -  -  -  -  -
-  -  -  -  -  -  -  -  -  -  -  -  -  -
-  -  -  -  -  -  -  -  -  -  -  -  -  -
-  -  -  -  -  -  -  -  -  -  -  -  O -
-  -  -  -  -  -  -  -  -  -  -  -  O -
-  -  -  -  -  -  -  -  -  -  -  -  O -
-  -  -  -  -  -  -  -  -  -  -  -  O -
-  -  -  -  -  -  -  -  -  -  -  -  O -
-  -  -  -  -  -  -  -  -  -  -  -  O -
-  -  -  -  -  -  -  -  -  -  -  -  O -
-  -  -  -  -  -  -  -  -  -  -  -  O -
-  -  -  -  -  -  -  -  -  -  -  -  O -

这是我的密码:

class Board:

    def create():
        width, height = 14, 14
        symbol = '-' + ' '
        board = [symbol for x in range(width)]
        board = [board for y in range(height)]
        return board
    
    def print(dot_pos):
        run = 0
        board = Board.create()
        for line in board:
            if run == dot_pos[1]:
                line[dot_pos[0]] = 'O'
                print('run')
            run +=1
            line = str(line)
            for char in "['],":
                line = line.replace(char, "")
            print(line)

我不想改变坐标,我只想让for循环遍历board中的每个列表,并改变将打印到屏幕上的内容。提前谢谢大家

注意:这也是我的第一篇文章,所以如果我在这个平台上接近你时需要做一些不同的事情,请告诉我。和平


热门问题