Python 打印前10个完美正方形的程序

Python 打印前10个完美正方形的程序,python,perfect-numbers,Python,Perfect Numbers,我试图检查自然数并测试每个自然数是否是完美的正方形打印该数字,但我唯一的条件是只打印前10个完美的正方形 i =2 n=1 #used for counting while 10>=n: for j in range(1,i): x =1 while x*x<=j: if x*x==j: print(j) n

我试图检查自然数并测试每个自然数是否是完美的正方形打印该数字,但我唯一的条件是只打印前10个完美的正方形

i =2
n=1 #used for counting

while 10>=n:
        for j in range(1,i):
            x =1
            while x*x<=j:
                if x*x==j:
                    print(j)
                    n+=1
                x+=1
            i+=1
            j+=1
i=2
n=1#用于计数
当10>=n时:
对于范围(1,i)内的j:
x=1

而x*x完美正方形只是:

1 * 1 = 1
2 * 2 = 4
3 * 3 = 9
4 * 4 = 16
...
所以你可以做一个循环,从1到你想要的任何整数(在你的例子中是10),然后像这样打印这个数的平方:

对于范围(1,11)内的i:#它是11,因为它的范围是11-1,所以是10
打印(i*i)
输出:

1
4
9
16
25
36
49
64
81
100

您得到了什么输出?您希望得到什么?欢迎使用StackOverflow!我知道你是一个新的投稿人,所以我建议你签出并。你这样做,而不是只打印前十个整数的平方,有什么原因吗?@MarkMeyer,因为a是不同的东西。@MarkMeyer,不知怎的,在我这边,这是一个
outofoffeerror
。实际上,它只需打印(',').join(map(str,(i**2表示范围(1,11)'))