Python初学者的基础问题

这个程序问题是在其中一个功能,我想输入起始和结束两个数字,这个功能想让他将这两个数字区间内所有整数的平方依次输出,但是我这个输出只有一个[1],不知道为什么,麻烦看一下,给一个修改后的完整代码,谢谢

x = int(input("x= ")) #开始数字
y = int(input("y= ")) #结束数字
odd = range(x, y + 1, 2)
even = range(x + 1, y + 1, 2)
def squares():
    a = list(range(x, y, 1))
    all = []
    for i in a:
        i = i * i
        all.append(i)
        return all
print("odd:",list(odd))
print("even:",list(even))
print("The squares of all numbers are:",squares())

这张是输出结果

img

第11行return all的缩进不对,return应该和for对齐

请看👉 :python初学者常见的错误