-1
我有以下Python代碼:蟒類 - 函數變量範圍
class Geometry_2D:
def __init__(self, shape_name):
self.shape_name = shape_name
class Polygon(Geometry_2D):
def __init__(self, shape_name, verticies_amount):
Geometry_2D.__init__(self, shape_name)
self.verticies_amount
def Adjust_verticies_amount(self):
self.verticies_amount += 1
triangle = Polygon('triangle', 3)
quadrilateral = triangle.Adjust_verticies_amount()
這裏我有一個可變verticies_amount
其在Polygon
類__init__
函數來定義。我需要在Adjust_verticies_amount
函數中使用verticies_amount
變量。但是,這是不可能的,因爲它們處於不同的範圍。所以,我的quadrilateral = triangle.Adjust_verticies_amount()
調用不起作用。
我應該怎麼做才能正確?
你只是忘了申報'self.verticies_amount = verticies_amount' – PRMoureu
你忘了分配給'self.verticies_amount'在你的'Polygon'' __init__'中。將來,說「不起作用」不是一個充分的問題規範。你的程序在下面一行會失敗:'triangle = Polygon('triangle',3)',它會給你一個'AttributeError' –