擅长:python、mysql、java
<p>一个选项是命名元组:</p>
<pre><code>from typing import Any, NamedTuple
class GenericEvent(NamedTuple):
type: Any
date_scraped: Any
date_of_event: Any
time: Any
link: str
countdown: Any
blurb: str
@property
def countdown(self):
countdown_delta = date_of_event - date_scraped
return countdown_delta.days
@property
def has_passed(self):
return self.countdown < 0
def get_dictionary(self):
return {
**self._asdict(),
'countdown': self.countdown,
'has_passed': self.has_passed,
}
</code></pre>
<p>(将<code>Any</code>替换为字段的实际类型,例如<code>datetime.datetime</code>。)</p>
<p>或者,如果您希望它是可变的,<a href="https://docs.python.org/3/library/dataclasses.html" rel="nofollow noreferrer">data class</a>。在</p>