Python 2.7 将计数数字添加到列表中的单词

Python 2.7 将计数数字添加到列表中的单词,python-2.7,Python 2.7,我有这样一个清单: <w>Asf</w> <k>BOO</k> <l>leg</l> <w>kum</w> ... 但这是完全错误的。我得到了开始和结束标签的id,它显然不算在内。不完全确定你在问什么。我理解您的问题,您希望为每个标记添加一个递增的id属性。您可以尝试以下方法: data = ['<w>Asf</w>', '<k>BOO</k>', '

我有这样一个清单:

<w>Asf</w>
<k>BOO</k>
<l>leg</l>
<w>kum</w>
...

但这是完全错误的。我得到了开始和结束标签的id,它显然不算在内。

不完全确定你在问什么。我理解您的问题,您希望为每个
标记添加一个递增的
id
属性。您可以尝试以下方法:

data = ['<w>Asf</w>', '<k>BOO</k>', '<l>leg</l>', '<w>kum</w>']
counter = 0
for i, line in enumerate(data):
    if "<w>" in line:
        data[i] = line.replace("<w>", "<w id='{}'>".format(counter))
        counter += 1
print data

就这样。谢谢我试过一些有线的东西。。。但这完全奏效了!
chars = ('w', 'k','l')
tags = itertools.cycle(chars)
for word, tag in zip(my_list, tags):
    names1.append("<{0} id='1'>{1}</{0}>".format(tag, word))
    print("<{0} id='1'>{1}</{0}>".format(tag, word))
data = ['<w>Asf</w>', '<k>BOO</k>', '<l>leg</l>', '<w>kum</w>']
counter = 0
for i, line in enumerate(data):
    if "<w>" in line:
        data[i] = line.replace("<w>", "<w id='{}'>".format(counter))
        counter += 1
print data
["<w id='0'>Asf</w>", '<k>BOO</k>', '<l>leg</l>', "<w id='1'>kum</w>"]