繁体   English   中英

为什么我不能用 Python 3 中的浮点数除以 1

[英]Why can't I divide 1 with a float in Python 3

leetcode 任务

我在 leetcode 中练习 Python3。 我必须在不使用“**”的地方制作电源 function。 当指数 (n) 为正时,我的代码有效,但当它为负时则无效。 当它为负时,我尝试将结果除以 1,但它的行为就像结果始终为 1。在这种情况下,它不是除 1 / 4,而是看起来像 1 / 1。是否有人知道问题出在哪里?

你的问题是当 n < 0 你有

for i in range(n):

它应该是:

for i in range(-n):

修订代码

def my_pow(x, n):
    res = 1
    if n > 0:
        for i in range(n):
            res = res*x
        return res
    if n < 0:
        for i in range(-n):
            res = res*x
        return 1/res
    return res

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM