我的元組下面的列表:如何更改元組列表的值?
lis = [('The', 'DET'),
('iphone', 'X'),
('is', 'VERB'),
('a', 'DET'),
('very', 'ADV'),
('nice', 'ADJ'),
('device', 'NOUN'),
('.', 'PUNCT'),
('However', 'ADP'),
('the', 'DET'),
('pixel', 'X'),
('is', 'VERB'),
('by', 'ADP'),
('far', 'ADV'),
('more', 'ADV'),
('interesting', 'ADJ'),
('since', 'ADV'),
('it', 'PRON'),
('was', 'AUX'),
('made', 'VERB'),
('by', 'ADP'),
('google', 'NOUN'),
('.', 'PUNCT')]
我的主要目標是明確改變的元組的值:('iphone', 'X'), ('pixel', 'X'), ('google', 'NOUN')
到('iphone', 'device'), ('pixel', 'device'), ('google', 'entity')
。因此,由於我感興趣的保存順序,我試過如下:
tags['Google'] = 'device'
tags['pixel'] = 'device'
tags['iphone'] = 'entity'
#this one is not present in lis . Nevertheless, I would like to add it just in case I need it.
tags['galaxy'] = 'device'
tags = list(tags.items())
tags = OrderedDict(postag(str(sample)))
自從我加入tags['galaxy'] = 'device'
它實際上是在列表爲('galaxy', 'device')
的末尾添加它。因此,我的問題是如何修復和更新元組的值,如果它們存在?
是否有必要使用元組列表?元組是不可改變的,所以設計我不會使用它們,如果我知道它們可能會改變。例如,也許你可以使用字典來存儲映射,也可以使用單獨的列表來保存鍵的順序? – MxyL
@MxyL不幸的是,元組是必要的...我也想出你的想法。 –