问题描述
from collections import namedtuple
BookPlan = namedtuple('Book',['size','weight'])
books = BookPlan(3,5),BookPlan(4,9)
i=0
book={}
while (i<3):
book['size'] = i
book['weight'] = i*5
i=i+1
books=books+BookPlan(**book)
print (books)
我想得到这样的东西:
Book(size=3,weight=5),Book(size=4,weight=9),Book(size=1,Book(size=2,weight=10)
但事实上我得到:
(Book(size=3,1,5,2,10)
结果类似于 namedtuple
和 tuple
的串联。我的错误在哪里?
解决方法
书籍 = 书籍 + (BookPlan(**book),)
感谢 falsetru