问题
import struct
from collections import namedtuple
StructPageNum = namedtuple('FDResult', ['DeviceID', 'PageNum','PicSize','PicData'])
PageNumList = []
Node = StructPageNum(DeviceID='NR09', PageNum=[],PicSize=100,PicData='')
PageNumList.append(Node)
PageNumList[0].PicData = 'hello' //how to do at here?
QUESTION
how to edit the value of PicData?
回答1:
It looks to me like you can use the _replace method of a namedtuple to do this pretty easily:
PageNumList[0] = PageNumList[0]._replace(PicData='hello')
This puts a new namedtuple in your PageNumList
which looks pretty much like the old namedtuple except that we've changed the PicData
"attribute". You can't edit the namedtuple that you have already since namedtuple
s are immutable (just like their unnamed counterparts: tuples
)
来源:https://stackoverflow.com/questions/14731157/python-how-to-edit-data-in-a-namedtuple-stored-in-a-list