函数中有范围的For循环

2024-03-28 09:22:26 发布

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

编写一个名为printsquares(numin)的函数,即接受参数numinnumin成为具有范围的for循环的上端,因此:

for i in range(numin)

当for循环执行时,它打印范围内每个i的平方。以下是跑步:

>>> printsquares(6)
0
1
4
9
16
25
>>>

这就是我应该为我的问题做的,我只是不能像例子中那样把平方根打印出来。你知道吗

这是我的密码:

import math
def printsquares(numin):
    for i in range(numin):
        print(math.sqrt(numin))

Tags: 函数inimport密码for参数defrange
2条回答

你每次都在做numin的平方根,而不是每个i的平方。将print语句更改为:

print(i * i)  # I think this is slightly faster than i ** 2.

演示:

>>> printsquares(6)
0
1
4
9
16
25

总是打印numin的平方根,而不是循环变量i。只需使用后者:

def printsquares(numin):
    for i in range(numin):
        print(math.sqrt(i))

接下来,生成平方,而不是平方根;只需将i自身相乘:

def printsquares(numin):
    for i in range(numin):
        print(i * i)

或者可以使用**幂运算符将i提升为2的幂:

def printsquares(numin):
    for i in range(numin):
        print(i ** 2)

相关问题 更多 >