Skip to main content
 首页 » 编程设计

python之什么时候用类,什么时候用字典

2025年05月04日11dflying

我正在处理一个有限的“对象”列表,我将在我的小脚本中使用这些对象:

books = [  
    {'name': 'Book1': 'id', '123', 'text', '.....'}, 
    {'name': 'Book2': 'id', '123', 'text', '.....'}, 
    {'name': 'Book3': 'id', '123', 'text', '.....'}, 
] 

为这种类型的书创建一个类是否有意义,还是这样就可以了?

创建类的问题是样板文件会稍微多一些。

请您参考如下方法:

既然你只是想存储数据,我建议你使用命名元组。这是一个很好的例子,说明如何 named tuples被使用。

理想情况下,您可以简单地循环遍历书籍列表,然后获取每个列表的值,然后将它们放入一个命名的元组中。然后可以像这样简单地访问它们:

some_book.name 

这是一个简短的例子:

>>> from collections import namedtuple 
>>> NetworkAddress = namedtuple('NetworkAddress',['hostname','port']) 
>>> a = NetworkAddress('www.python.org',80) 
>>> a.hostname 
'www.python.org' 
>>> a.port 
80 
>>> host, port = a 
>>> len(a) 
2 
>>> type(a) 
<class '_ _main_ _.NetworkAddress'> 
>>> isinstance(a, tuple) 
True 
>>> 

这将使访问书中的数据变得更加简单,并帮助您确保书中所需的所有数据都存在。