为什么要创建一个空的class,然后实例化它并设置一些属性?
Why create an empty class, then instantiate it and set some attributes?
html2txt 包含以下代码:
class Storage: pass
options = Storage()
options.google_doc = False
options.ul_item_mark = '*'
我以前从未见过这种方法。在 __init__()
中设置属性的这种方法的 benefit/use 是什么?这里甚至需要 class 吗?
假设您要存储一些命名数据的集合。您可以使用 dict
,但您喜欢 class 对象中的点状属性外观。只需创建最无聊的 class 并使用 python 的原生属性赋值即可。一般都是审美问题。
如果您提前知道属性,则可以使用命名元组来实现此类功能。
来自python docs:
EmployeeRecord = namedtuple('EmployeeRecord', 'name, age, title, department, paygrade')
html2txt 包含以下代码:
class Storage: pass
options = Storage()
options.google_doc = False
options.ul_item_mark = '*'
我以前从未见过这种方法。在 __init__()
中设置属性的这种方法的 benefit/use 是什么?这里甚至需要 class 吗?
假设您要存储一些命名数据的集合。您可以使用 dict
,但您喜欢 class 对象中的点状属性外观。只需创建最无聊的 class 并使用 python 的原生属性赋值即可。一般都是审美问题。
如果您提前知道属性,则可以使用命名元组来实现此类功能。
来自python docs:
EmployeeRecord = namedtuple('EmployeeRecord', 'name, age, title, department, paygrade')