#
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
# 求非负整数 n 的平方根
# @param n int整型 你需要求 n 的平方根
# @return double浮点型
#
class Solution:
    def findSqrt(self , n: int) -> float:
        # write code here
        return n ** 0.5

if __name__=="__main__":
    n = int(input())
    Solution().findSqrt(n)

一、逐字深度解析

  1. class Solution:class 是“造模具”的关键词。Solution 是模具名,首字母大写约定俗成表示“这是个类”。
  2. def findSqrt(self, n: int) -> float:def 开始“刻功能”。findSqrt 功能名,驼峰写法。self 是“模具造出来的产品自己”,必须写在第一个,否则机器不认识。n: int 类型注解:告诉人类/IDE“我希望收到 int”。-> float 返回类型注解:告诉人类/IDE“我会吐出 float”。函数体只有一句 return n ** 0.5,即“开平方”——Python 里幂运算符 ** 比数学的 √ 更通用。
  3. if __name__ == "__main__":文件被执行时,Python 会把当前模块的 __name__ 变量设成 "__main__"。这一行就是“只有当本文件被‘python xxx.py’直接运行时,才走下面的代码;被 import 时不走”。俗称“模块守门员”。
  4. n = int(input())从标准输入读一行 → 字符串 → 转 int → 赋给 n。
  5. Solution().findSqrt(n)Solution() 马上“用模具造一个一次性产品”(匿名实例)。.findSqrt(n) 让这个产品干活,计算平方根。