如何从 Python 列表中的命名元组创建布尔表达式
How to create Boolean expression from a namedtuple within a list on 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]
根据这些给定的信息,我如何创建一个布尔表达式,表示 booklist[0]
的价格高于 booklist[1]
的价格?我尝试将 booklist[0[3]]
与 booklist[1[3]]
进行比较,但我认为这不是比较列表中命名元组的正确格式。我应该怎么做?
如果你有这本书(例如 booklist[0]
),只需在它后面写上 [3]
(没有空格)。但更喜欢使用名称,而不是索引。这是一个 命名的 元组。
无论您是将这本书放在变量中还是以其他方式访问(在本例中是从列表中获取元素)都无关紧要。
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]
根据这些给定的信息,我如何创建一个布尔表达式,表示 booklist[0]
的价格高于 booklist[1]
的价格?我尝试将 booklist[0[3]]
与 booklist[1[3]]
进行比较,但我认为这不是比较列表中命名元组的正确格式。我应该怎么做?
如果你有这本书(例如 booklist[0]
),只需在它后面写上 [3]
(没有空格)。但更喜欢使用名称,而不是索引。这是一个 命名的 元组。
无论您是将这本书放在变量中还是以其他方式访问(在本例中是从列表中获取元素)都无关紧要。