python 求大佬

打印数字组成的空心矩形。

输入格式:

输入一个整数n(n>0)。

输出格式:

打印一个由n组成的数字空心矩形,要求行和列都是n个数字。(注意:没有空行)

输入样例1:

在这里给出一组输入。例如:

5

输出样例1:

在这里给出相应的输出。例如:

55555
5   5
5   5
5   5
55555

输入样例2:

在这里给出一组输入。例如:

2

输出样例2:

在这里给出相应的输出。例如:

22
22

输入样例3:

在这里给出一组输入。例如:

1

输出样例3:

在这里给出相应的输出。例如:

1
>>> def print_square():
	n = int(input('请输入一个正整数:'))
	if n == 1:
		print(n)
	else:
		for i in range(n):
			if i == 0 or i == n-1:
				mid = str(n)*(n-2)
			else:
				mid = ' '*(n-2)
			print('%s%s%s'%(str(n), mid, str(n)))

			
>>> print_square()
请输入一个正整数:1
1
>>> print_square()
请输入一个正整数:2
22
22
>>> print_square()
请输入一个正整数:3
333
3 3
333
>>> print_square()
请输入一个正整数:5
55555
5   5
5   5
5   5
55555