Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/314.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 对于具有函数范围的循环_Python_For Loop_Range_Sqrt - Fatal编程技术网

Python 对于具有函数范围的循环

Python 对于具有函数范围的循环,python,for-loop,range,sqrt,Python,For Loop,Range,Sqrt,编写一个名为printsquaresumin的函数,即接受参数numin。numin成为范围为的for循环的上端,因此: for i in range(numin) 当for循环执行时,它会打印范围内每个i的平方。以下是跑步记录: >>> printsquares(6) 0 1 4 9 16 25 >>> 这就是我应该为我的问题做的,我只是不能像例子中那样得到平方根 这是我的密码: import math def printsquares(numin):

编写一个名为printsquaresumin的函数,即接受参数numin。numin成为范围为的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))

您总是打印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)

你每次都在做numin的平方根,而不是每个i的平方。将打印对账单更改为:

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


平方和平方根之间是有区别的。@ecatmur:而numin和i之间的区别……平方根与平方正好相反。
>>> printsquares(6)
0
1
4
9
16
25