试着为sch做一个简单的棋盘

2024-10-01 13:43:13 发布

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

所以我的代码走了这么远:

rivi = input("Enter dimensions \n")
dimension = int(rivi)


while dimension <= 0: 
    rivi = input("dimension")
    dimension = int(rivi)

else:
    for h in range(dimension):
        for l in range(dimension):
            i = ((h + l + 1) % 2)
            print(i, end=(''))
        print() 

我唯一的问题是如何将代码中的1和0更改为其他内容?你知道吗


Tags: 代码in内容forinputrangeelseint
3条回答

根据您的代码,您需要两种类型的令牌,例如b代表黑色,w代表白色,因此您可以尝试:

else:
    tokens = ['b', 'w']
    for h in range(dimension):
        for l in range(dimension):
            i = tokens[(h + l + 1) % 2]
            print(i, end=(''))
        print()

例如,它将输出4:

wbwb
bwbw
wbwb
bwbw

你可以用你喜欢的其他字符串来改变它。不过,我认为这是一种浪费,因为你没有储存它们供以后使用。你可以用一个列表数组来表示电路板。你知道吗

好吧,祝你好运!你知道吗

您正在打印1和0,因此无法更改它们,我想您正在查找列表

board_dim = int(input('enter dimension: '))

board = [[0]*board_dim for row in range(board_dim)] #initializing list of list aka 2d board # list comprehension

for i in range(board_dim):
    for j in range(board_dim):
        board[i][j] = (i+j + 1) % 2

def print_board():
    for row in board:
        print(row)

print_board()

# update first row first col ie 0,0
board[0][0] = 7

print('\nafter update') 
print_board()


enter dimension: 
[1, 0, 1, 0]
[0, 1, 0, 1]
[1, 0, 1, 0]
[0, 1, 0, 1]

after update
[7, 0, 1, 0]
[0, 1, 0, 1]
[1, 0, 1, 0]
[0, 1, 0, 1]
    i = ((h + l + 1) % 2)
    print(i, end=(''))

您正在打印“i”,它由模设置为0或1。你知道吗

试着印点别的?你知道吗

例如:

print(' ,', end=(''))

将输出

 , , , ,
 , , , , 
 , , , , 

相关问题 更多 >