我正在尝试在一个类中初始化一个属性,但是它似乎不起作用。 该类应使用另一个类。这是我编写的代码:
Book.py:
from Paragraph import Paragraph as Paragraph
'''definitions'''
class Book:
def __init__(self, book):
self._paragraphs = book
'''paragraphs property'''
@property
def paragraphs(self):
return self._paragraphs
@paragraphs.setter
def paragraphs(self, book):
paragraph_0 = Paragraph(book[0x0:0x100])
paragraph_1 = Paragraph(book[0x200:0x300])
paragraph_2 = Paragraph(book[0x300:0x400])
paragraph_3 = Paragraph(book[0x400:0x500])
self._paragraphs = [paragraph_0, paragraph_1, paragraph_2, paragraph_3]
Paragraph.py:
'''definitions'''
class Paragraph:
def __init__(self, paragraph):
self._paragraph = paragraph
self._first_section = paragraph[0x0:0x10]
self._second_section = paragraph[0x10:0x100]
'''paragraph property'''
@property
def paragraph(self):
return self._paragraph
@paragraph.setter
def paragraph(self, paragraph):
self._paragraph = paragraph
'''first_section property'''
@property
def first_section(self):
return self._first_section
@first_section.setter
def first_section(self, first_section):
self._first_section = first_section
'''second_section property'''
@property
def second_section(self):
return self._second_section
@second_section.setter
def second_section(self, second_section):
self._second_section = second_section
然后我创建一个Book实例:
first_book = Book(some_hex_list)
我希望first_book._paragraphs
中有4个段落,并且每个段落都应具有第一和第二部分属性(如在Paragraph类中一样)。相反,first_book._paragraphs
仅包含原始的some_hex_list
数据。
我想创建一个Book实例并启动它,因此最终我应该得到如下内容:
first_book
-->_paragraphs
----->paragraph_0
---------->_first_section
---------->_second_section
----->paragraph_1
---------->_first_section
---------->_second_section
----->paragraph_2
---------->_first_section
---------->_second_section
----->paragraph_3
---------->_first_section
---------->_second_section
谢谢!