python问题:输入一个数字n,计算后,输出一个字典

问题如下:
输入一个正整数 n,生成包含 (i, i*i)的字典,该字典包含 1 到 n所有整数(包含1在内),然后输出该字典。
例如:如果输入9,程序的输出应该如下图:

img


n = int(input('输入一个正整数 n:'))

newn = { i: i*i for i in range(1,n+1)}

print(newn)

img

img

n = int(input('输入一个整数:'))

dic = { i:i*i for i in range(1,n+1)}
for k,v in dic.items():
    print(k,':',v)

'''
输入一个整数:9    
1 : 1
2 : 4
3 : 9
4 : 16
5 : 25
6 : 36
7 : 49
8 : 64
9 : 81
'''