学姐学长们,求解,用Python

img

n=5
row=0
col=n//2
l=[]
for i in range(n):
    t=[]
    for j in range(n):
        t.append(0)
    l.append(t)
k=1
while k<=n*n:        
    l[row][col]=k
    trow,tcol=row,col
    k+=1
    row-=1
    col+=1
    col%=n
    if row==-1:
        row=n-1
    if l[row][col]!=0 or (trow==0 and tcol==n-1): 
        row+=2
        col-=1
        row%=5
        continue
for i in l:
    for j in i:
        print(j,end=' ')
    print()