我正在创建此功能
def volumn(value_side):
def side(value_side):
side = value_side+2
return (side)
value_area = side(value_side)
def area(value_area):
area = value_area*4
return(area)
final_result = area(value_area)
return(final_result)
我的问题是,如果我只想调用side
函数
我尝试使用此代码volumn(3).side(3)
,但仍然出现错误int' object has no attribute 'side'
答案 0 :(得分:2)
您可以返回内部函数side
和area
以便在外部访问它们
def volumn():
def side(value_side):
side = value_side+2
return side
def area(value_area):
area = value_area*4
return(area)
return side, area
side, area = volumn()
side_value = side(3)
print(side_value)
print(area(side_value))
或者您可以使用类来封装函数和属性
class Volumn:
def __init__(self, value_side):
self.value_side = value_side
def side(self):
side = self.value_side+2
return side
def area(self):
area = self.side()*4
return area
v = Volumn(3)
print(v.side())
print(v.area())
输出将为
5
20
答案 1 :(得分:1)
您可以在外部范围中定义这些函数以访问它们。
def side(value_side):
side = value_side+2
return (side)
def area(value_area):
area = value_area*4
return(area)
def volume(value_side):
value_area = side(value_side)
final_result = area(value_area)
return final_result