python,用while语句打印出一个实心正方形

我是在pycharm上编写的,我尝试的代码:

a=int(input("请输入正方形的边长"))
if a>0:
i=0
while i<a:
print(' *' * a)
i+=1
else:
print("非法数值,重新输入")

问题所在:i+=1无法返回,循环一直使用i=1,导致无法结束

img


没缩进

是不是代码缩进有问题啊,代码本身没问题啊:

a=int(input("请输入正方形的边长"))
if a>0:
    i=0
    while i<a:
        print(' *' * a)
        i+=1
else:
    print("非法数值,重新输入")