Python 计算平方数
平方数和完全平方数
- 平方数:某个数值的平方,如 4 的平方为 16
- 完全平方数:若一个数能表示成某个整数的平方的形式,则称这个数为完全平方数,如 4*4 = 16,16即为完全平方数
在Python中,可以通过 ** 运算符来计算幂
square = 4 ** 2 # 4的平方数
print(square) # 结果为 16
获取n个完全平方数
def get_squares(n: int, lo=1) -> list:
"""
获取指定数量的完全平方数
:param n: 指定长度
:param lo: 指定完全平方数最小值,并以此取得后面的完全平方值,默认值为1
若不为正确的完全平方值,则向下取值
:return: 完全平方数 列表数组
"""
if not isinstance(n, int): # 判断传入参数类型是否正确
raise TypeError("n 应传入整数类型")
lo = int(lo ** 0.5)
square_arr = [i*i for i in range(lo, lo+n)]
return square_arr
print(get_squares(6))
判断是否为完全平方数
很简单的思路,先将给定的数值求根,如果是完全平方数,那么求出根的平方就等于给定的数值,否则相反
def issquare(x) -> bool:
root = int(x ** 0.5)
return x == root ** 2
print(issquare(16)) # 结果为 True
print(issquare(12)) # 结果为 False