python创建一个国际象棋棋盘,Jupyter Notebook:实现国际象棋棋盘

1、问题分析

【“停课不停学”ing,在家也要好好学习,好好自学呀!】

国际象棋棋盘是8*8的,i(0~7)代表行,j(0~7)代表列。当i+j为奇数的时候,是黑色格子,反之,白色格子。

python创建一个国际象棋棋盘,Jupyter Notebook:实现国际象棋棋盘_第1张图片

2.代码实现

-1- Python语言

#实现字符串的循环移动

def MoveLeft(string,n):

n1=abs(n)

length=len(string)

n1=  n1%length  #循环移位个数

if n==0:    #不移动

return string

elif n<0:  #向左移动

string_n=string[n1:]+string[0:n1]

else:       #向右移动

string_n=string[(length-n1):]+string[0:(length-n1)]

return string_n

def main():

a='  66  66  66  66'

i=0

while i<8:

print(a)

a=MoveLeft(a,-2)

i+=1

main()

运行结果:

python创建一个国际象棋棋盘,Jupyter Notebook:实现国际象棋棋盘_第2张图片

-2- Jupyter Notebook

import numpy as np

matr1=np.ones((8,8))

for i in range(8):

for j in range(8):

if(i+j)%2==0:

matr1[i,j]=0

print('国际象棋棋盘:\n',matr1)

for i in range(0,8):

for j in range(0,8):

if matr1[i,j]==0:

print("□",end=' ')

else:

print("■", end=' ')

print('\n')

运行结果:

国际象棋棋盘:

[[0. 1. 0. 1. 0. 1. 0. 1.]

[1. 0. 1. 0. 1. 0. 1. 0.]

[0. 1. 0. 1. 0. 1. 0. 1.]

[1. 0. 1. 0. 1. 0. 1. 0.]

[0. 1. 0. 1. 0. 1. 0. 1.]

[1. 0. 1. 0. 1. 0. 1. 0.]

[0. 1. 0. 1. 0. 1. 0. 1.]

[1. 0. 1. 0. 1. 0. 1. 0.]]

□ ■ □ ■ □ ■ □ ■

■ □ ■ □ ■ □ ■ □

□ ■ □ ■ □ ■ □ ■

■ □ ■ □ ■ □ ■ □

□ ■ □ ■ □ ■ □ ■

■ □ ■ □ ■ □ ■ □

□ ■ □ ■ □ ■ □ ■

■ □ ■ □ ■ □ ■ □

python创建一个国际象棋棋盘,Jupyter Notebook:实现国际象棋棋盘_第3张图片

你可能感兴趣的:(python创建一个国际象棋棋盘,Jupyter Notebook:实现国际象棋棋盘)