首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >列表中项目的重复索引

列表中项目的重复索引
EN

Stack Overflow用户
提问于 2019-03-08 20:09:19
回答 2查看 86关注 0票数 2

我有一个索引的问题,我有一个列表,看起来像这样:

代码语言:javascript
复制
['Persian', 'League', 'is', 'the', 'largest', 'sport', 'event', 'dedicated', 
'to', 'the', 'deprived', 'areas', 'of', 'Iran', 'Persian', 'League', 
'promotes', 'peace', 'and', 'friendship', 'video', 'was', 'captured', 'by', 
'one', 'of', 'our', 'heroes', 'who', 'wishes', 'peace']

我想打印大写名称的索引,大写名称如下:

代码语言:javascript
复制
0:Persian
1:League
13:Iran
14:Persian
15:League

但是我不能像下面这样打印reapet索引:

代码语言:javascript
复制
0:Persian 
1:League
13:Iran
0:Persian   <=======
1:League    <=======

请帮帮我!

EN

回答 2

Stack Overflow用户

发布于 2019-03-08 20:13:52

为此,您必须使用列表理解:

代码语言:javascript
复制
[(i, word) for i, word in enumerate(l) if word.istitle()]
>> [(0, 'Persian'), (1, 'League'), (13, 'Iran'), (14, 'Persian'), (15, 'League')]

函数istitle()检查单词的第一个字母是否以大写字母开头。

或者,您可以使用:

代码语言:javascript
复制
for i, word in enumerate(l):
    if word.istitle():
        print(i,': ', word)

0 :  Persian
1 :  League
13 :  Iran
14 :  Persian
15 :  League
票数 3
EN

Stack Overflow用户

发布于 2019-03-08 20:18:23

返回格式化字符串的最短理解:

代码语言:javascript
复制
["{}:{}".format(*x) for x in enumerate(lst) if x[1].istitle()]
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55062957

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档