How do I make a grid in python?

How do I make a grid in python?

for i in range(height):
    grid.append(row)

This for loop appends the same row list to the grid list (actually it appends 5 different references to the same list).

Instead, you should append a new, different list:

for i in range(height):
    grid.append([])

Verify by viewing the memory addresses of the inner lists in these 2 examples:

grid = []
row = []
for i in range(5):
    grid.append(row)
for li in grid:
    print(id(li))
# 92532104
# 92532104
# 92532104
# 92532104
# 92532104

compared to

grid = []
for i in range(5):
    grid.append([])
for li in grid:
    print(id(li))

# 80801224
# 80801160
# 80669704
# 80381192
# 80380488

Use list()

gridline = []
for i in range(5):
    gridline.append()
grid = []
for i in range(5):
    grid.append(list(gridline))

How do I make a grid in python?

Just use this.

    width = int(input(how wide ))
    height = int(input(how tall ))
    grid = []
    i = int(0)
    for i in range(width):
        grid.append(_)
    for i in range(height):
        print(grid)

Leave a Reply

Your email address will not be published. Required fields are marked *