思路:1.首行、最中间行和最后一行每个位置都打印字符。2.其余行,第一个位置、最中间和最后一个位置打印字符,其余位置打印\t
难点:确定首行、最中间行和最后一行(第一个位置、最中间和最后一个位置,同理,可看成首列、最中间列、最后一列),可通过(行/列数-1)/2==0来判断。
如有错误,还望指正!
import random
a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'
b=int(input('请输入田字格的行数(奇数):'))
for i in range(b):
if i%((b-1)/2)==0:
for j in range(b):
print('{}'.format(a[random.randint(0,len(a)-1)]),end='\t')
print('\n')
else:
for j in range(b):
if j%((b-1)/2)==0:
print('{}'.format(a[random.randint(0,len(a)-1)]),end='\t')
else:
print('{}'.format(''),end='\t')
print('\n')
输入结果: