为什么我的代码不工作的平方麻木

2024-04-25 14:58:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我的代码在下面。只要找出数字的平方,但只有一个是打印出来的

   n = int(input("Enter a number: "))

   def square(n): 
       for i in range(1,n+1):
           result = {n:n**2}
           return (result)
   square(n)

n=3

Expected out : {1:1,2:4,3:9}


Tags: 代码innumberforinputreturndefrange
3条回答
n = int(input("Enter a number: "))


def square(n):
    result = {}
    for i in range(1, n + 1):
        a = {i: i ** 2}
        result.update(a)
    return result


print(square(n))

输出:

{1: 1, 2: 4, 3: 9}

使用字典理解,您可以做到:

def square(n):
    d = {i : i**2 for i in range(1,n+1)}
    return d
n = 3
def square(n):
    result = {}
    for i in range(1,n+1):
        result[i] = i**2
    return result
print(square(n))

输出

{1: 1, 2: 4, 3: 9}

相关问题 更多 >

    热门问题