如何在Python的
问题描述:
from collections import namedtuple
Book = namedtuple('Book', 'title author year price')
best = Book('John Dixie',
'James Pi', 1922, 22.60)
better = Book('Clifford',
'Jane Doe', 2005, 20.00)
worst = Book('Nightingale',
'Daniel Smith', 1905, 27.90)
booklist = [best, better, worst]
列表有了这个给定的信息中创建一个从namedtuple布尔表达式,我该如何创建一个布尔表达式的的价格比的booklist[1]
高?我试着比较booklist[0[3]]
到booklist[1[3]]
,但我不认为这是比较列表中的namedtuple的正确格式。我应该怎么做?如何在Python的
答
如果你有这本书(例如),只需在它后面写上[3]
(没有空格)。但更喜欢使用名称,而不是索引。这是一个名为元组的。
无论您是将书籍放在变量中还是以不同方式访问(在本例中都是通过从列表中获取元素)都无关紧要。
+0
“如果你有这本书(例如booklist [0]),只需在它后面写[3](没有空格),但更喜欢使用名称,而不是索引,它是一个namedtuple。是的,这正是我一直在寻找的。谢谢,并为此感到抱歉。 – Deer530
看来你不知道如何访问数据。为什么你关于布尔表达式和比较的问题?一步一步来。 –
我被要求使用booklist [0]和booklist [1]来比较best和better的价格,但价格在namedtuple内,而书名是名为booklist的列表中的元素。我不知道如何说这个格式的22.60大于20.00。 换句话说,我不关心布尔表达式本身。我更关心如何使用上面的列表和namedtuples以编程格式设置价格。 – Deer530
所以你想访问那本书的“.... [3]”。 –