SQLAlchemy创建像__tablename__这样的属性是pythonic吗?

时间:2015-11-26 03:20:05

标签: python class sqlalchemy

我仍然处于Python学习阶段,但我已经了解了Python dunder方法(__init____cmp____add__等等。 。)并且我可以说,这些是核心Python开发人员允许程序员为自己的类实现特殊方法的方法。

因此,似乎这些应该是明确定义的,并且仅限于核心开发人员指定的内容。但是今天(因为我开始学习SQLAlchemy),我遇到了他们自己的属性,如__tablename____table_args__

对我来说,这令人困惑。我认为dunder方法或属性的Pythonic含义暗示它们是Python核心的一部分。但SQLAlchemy似乎将其用作隐藏ORM的低层部分的约定。

这是好习惯吗?如果我正在上课,我是否应该感到自由(甚至被鼓励)来构建我自己的dunder属性或方法?

0 个答案:

没有答案