Python面向对象实现圆面积计算报错,请求技术指导
修正你的Python圆面积OOP程序问题
嘿,我帮你找出代码里的两个关键小问题,修正后就能正常运行啦:
1. 类实例化时的大小写错误
Python是严格区分大小写的语言,你在script.py里导入的是大写开头的Circle类,但实例化的时候写成了小写的circle(30),这会导致Python找不到对应的类,抛出NameError。
修正后的script.py代码:
from circle import Circle circle1 = Circle(30) # 这里把小写circle改为大写Circle print(circle1.cirArea())
2. 清理circle.py的冗余文本
从你提供的内容来看,circle.py的最后一行混入了多余的提问文本,正确的面积计算语句应该是完整的:
修正后的circle.py代码:
class Circle: def __init__(self, radius): self.radius = radius def cirArea(self): # 用平方运算符**写起来更简洁直观 return self.radius ** 2 * 3.14
额外优化建议
如果想要更精确的圆周率值,可以导入Python内置的math模块,用math.pi代替硬编码的3.14,计算结果会更准确:
import math class Circle: def __init__(self, radius): self.radius = radius def cirArea(self): return math.pi * self.radius ** 2
这样修改后,运行script.py就能正确输出半径为30的圆的面积啦!
内容的提问来源于stack exchange,提问作者user10040408




