Python 判断一个数字是否为完全平方数

Document 对象参考手册 Python3 实例

要判断一个数字是否为完全平方数,我们可以使用数学方法。一个完全平方数是指可以表示为某个整数的平方的数。例如,16 是完全平方数,因为它是 4 的平方。

实例

import math

def is_perfect_square(n):
    if n < 0:
        return False
    sqrt = math.isqrt(n)
    return sqrt * sqrt == n

# 测试
number = 16
if is_perfect_square(number):
    print(f"{number} 是完全平方数")
else:
    print(f"{number} 不是完全平方数")

代码解析:

  1. import math:导入 Python 的数学模块,以便使用 math.isqrt 函数。
  2. def is_perfect_square(n)::定义一个函数 is_perfect_square,它接受一个整数 n 作为参数。
  3. if n < 0::检查 n 是否为负数,因为负数不可能是完全平方数。
  4. sqrt = math.isqrt(n):使用 math.isqrt 函数计算 n 的整数平方根。
  5. return sqrt * sqrt == n:检查平方根的平方是否等于 n,如果是,则 n 是完全平方数。
  6. number = 16:定义一个测试数字 16。
  7. if is_perfect_square(number)::调用 is_perfect_square 函数判断 number 是否为完全平方数,并输出结果。

输出结果:

16 是完全平方数

Document 对象参考手册 Python3 实例