рдбреЗрдЯрд╛ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдЧреБрдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдпрд╛ рдЙрди рдореВрд▓реНрдпреЛрдВ рдХреЛ рдЕрд╕рд╛рдЗрди рдХрд░реЗрдВ рдЬрд╣рд╛рдВ рдЖрдк рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рд╕рд╛рдзрд╛рд░рдг рдЧреЗрдЯреНрдЯрд░ рдпрд╛ рд╕реЗрдЯрд░ рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред
рдкрд░рд┐рднрд╛рд╖рд╛
рдЧрдгрдирд╛ рдкрджреНрдзрддрд┐ рдмрд╣реБрдд рдЬрдЯрд┐рд▓ рдирд╣реАрдВ рд╣реЛрдиреЗ рдкрд░, рдорд╛рдирдХ рд╡рд┐рд╢реЗрд╖рддрд╛ рдкрд╣реБрдВрдЪ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХреНрд╕реЗрд╕ рд╡рд┐рдзрд┐ рдХреЙрд▓ рдФрд░ рд╡рд┐рд╢реЗрд╖рддрд╛ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдХреЛ рд▓рдкреЗрдЯрдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рд╣реИред
рдЖрдХрд░реНрд╖рдг рдЖрддреЗ рд╣реИрдВ
рд╡рд┐рд╢реЗрд╖рддрд╛ рддрдХ рдЖрд╕рд╛рдиреА рд╕реЗ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рддрд░реАрдХреЛрдВ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдФрд░ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдкрд╖реНрдЯ рдХреЙрд▓ рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░рдХреЗ рдкрдардиреАрдпрддрд╛ рдХреЛ рдмрдврд╝рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЖрд▓рд╕реА рдЧрдгрдирд╛ рд╕рдВрднрд╡ рд╣реИред рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдХреНрд▓рд╛рд╕ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЛ рдмрдирд╛рдП рд░рдЦрдирд╛ рдкрд╛рдпрдерди рдкрде рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИред рдкреНрд░рджрд░реНрд╢рди рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ, рдпрд╣ рдПрдХ рд╕рдВрдкрддреНрддрд┐ рдХреЛ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдЧреЗрдЯреНрдЯрд░ рд╡рд┐рдзрд┐ (рдПрдХреНрд╕реЗрд╕рд░) рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реБрд▓рдн рд╣реЛрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдЬрдм рдПрдХ рдЪрд░ рддрдХ рд╕реАрдзреА рдкрд╣реБрдВрдЪ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдпрд╣ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХрд┐рдП рдмрд┐рдирд╛ рдПрдХреНрд╕реЗрд╕ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЛ рдмрд╛рдж рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
рд╡рд┐рдкрдХреНрд╖
рдкреНрд░реЙрдкрд░реНрдЯреА рдХреЛ рдШреЛрд╖рд┐рдд рдФрд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рдШреЛрд╖рд┐рдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдШреЛрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдпрд╣ рдмрддрд╛рдиреЗ рдХреА рдорд╛рдВрдЧ рдХреА рдЬрд╛рддреА рд╣реИ рдХрд┐ рдЙрдиреНрд╣реЗрдВ рдХреЛрдб рдореЗрдВ рдиреАрдЪреЗ рджреА рдЧрдИ рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдХреЗрд╡рд▓-рдХреЗрд╡рд▓
рд╕рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдЧреБрдгреЛрдВ рдХреЛ рдЫреЛрдбрд╝рдХрд░, рдиреАрдЪреЗ рджреЗрдЦреЗрдВ)ред рдЙрдиреНрд╣реЗрдВ
рдСрдмреНрдЬреЗрдХреНрдЯ рдХреНрд▓рд╛рд╕ рд╕реЗ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓рд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдУрд╡рд░рд▓реЛрдб рдСрдкрд░реЗрдЯрд░ рдЬреИрд╕реЗ рдЕрд╕реНрдкрд╖реНрдЯ рджреБрд╖реНрдкреНрд░рднрд╛рд╡ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рд╡рдВрд╢рдЬ рд╡рд░реНрдЧ рднреНрд░рд╛рдордХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
рдирд┐рд░реНрдгрдп
рдХреЛрдб рдореЗрдВ рдЙрди рдЧреБрдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рдЬреЛ рдЖрдкрдиреЗ рдбреЗрдЯрд╛ рдХреЛ рдПрдХреНрд╕реЗрд╕ рдпрд╛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд┐рдЦрд╛ рдерд╛, рдЬрд╣рд╛рдВ рдЖрдк рдПрдХ рд╕рд░рд▓ рд╡рд┐рдзрд┐ рдпрд╛ рд╕реЗрдЯ рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред
@Property рдбреЗрдХреЛрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреЗрд╡рд▓-рдЧреБрдг рд╣реА рдмрдирд╛рдП рдЬрд╛рдиреЗ рдЪрд╛рд╣рд┐рдПред рдЬрдм рддрдХ рдореВрд▓ рд╕рдВрдкрддреНрддрд┐ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддрдм рддрдХ рдЧреБрдгреЛрдВ рдХреЗ рд╕рд╛рде рд╡рд┐рд░рд╛рд╕рдд рдмрд╣реБрдд рдкрд╛рд░рджрд░реНрд╢реА рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреАред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдЖрдкрдХреЛ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рд╕рдВрдкрддреНрддрд┐ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдмреБрд▓рд╛рдП рдЧрдП рдЙрдкрд╡рд░реНрдЧреЛрдВ рдореЗрдВ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЧреЗрдЯрд░ рд╡рд┐рдзрд┐рдпрд╛рдВ рдЕрдкреНрд░рддреНрдпрдХреНрд╖ рд░реВрдк рд╕реЗ рд▓рд╛рдЧреВ рдХреА рдЬрд╛рддреА рд╣реИрдВ (
рдЯреЗрдореНрдкрд▓реЗрдЯ рд╡рд┐рдзрд┐ рдкреИрдЯрд░реНрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ)
рдЕрдЪреНрдЫрд╛:
import math class Square(object): """A square with two properties: a writable area and a read-only perimeter. To use: >>> sq = Square(3) >>> sq.area 9 >>> sq.perimeter 12 >>> sq.area = 16 >>> sq.side 4 >>> sq.perimeter 16 """ def __init__(self, side): self.side = side def __get_area(self): """Calculates the 'area' property.""" return self.side ** 2 def ___get_area(self): """Indirect accessor for 'area' property.""" return self.__get_area() def __set_area(self, area): """Sets the 'area' property.""" self.side = math.sqrt(area) def ___set_area(self, area): """Indirect setter for 'area' property.""" self.__set_area(area) area = property(___get_area, ___set_area, doc="""Gets or sets the area of the square.""") @property def perimeter(self): return self.side * 4