В оглавлении произведения, разбитого на части, разделы, подразделы, главы, подглавы, параграфы, подпараграфы, примечания и т. п., устанавливающие соподчиненность отдельных частей произведения, последовательно приводятся наименования частей, разделов, глав, параграфов в полном объёме, так, как они даны в тексте, и указываются страницы, на которых начинается рубрика. Рубрики последней ступени — подзаголовки, взятые в тексте рукописи в подбор, — в оглавлении могут не приводиться. Взаимоподчиненность частей произведения в оглавлении передают средствами полиграфического оформления: выделением в красную строку, шрифт
В оглавлении произведения, разбитого на части, разделы, подразделы, главы, подглавы, параграфы, подпараграфы, примечания и т. п., устанавливающие соподчиненность отдельных частей произведения, последовательно приводятся наименования частей, разделов, глав, параграфов в полном объёме, так, как они даны в тексте, и указываются страницы, на которых начинается рубрика. Рубрики последней ступени — подзаголовки, взятые в тексте рукописи в подбор, — в оглавлении могут не приводиться. Взаимоподчиненность частей произведения в оглавлении передают средствами полиграфического оформления: выделением в красную строку, шрифт
class Person(object):
def __init__(self, name = 'Bob', age = 25): #Значения по умолчанию заданы в конструкторе
self._name = name
self._age = age
@property
def name(self): #Свойство, возвращающее значение obj._name
return self._name
@property
def age(self): #Свойство, возвращающее значение obj._age
return self._age
def say_hi(self): #Рандомный метод
print(f'Hi, im {self._name}, im {self._age} yo')
def set_age(self, value): #Метод для изменения значения свойства obj._age
if value in range(1, 101):
self._age = value
else: raise RuntimeError('Bad Argument', f'Cant set age {value}, age must be in range [1, 100]')
Объяснение:
Второй класс попробуй реализовать сам