如何打印列表中两个相同项的索引值?

时间:2014-09-25 19:07:11

标签: python string list count indexing

list = [“car”,“bus”,“car”,“truck”,“van”,“bus”,“truck”]

说我想把所有的“汽车”换成“自行车”。我知道如何通过索引等方式为第一辆“汽车”做到这一点。但是我如何将所有“汽车”同时改为自行车呢?我想知道如何计算“car”的所有实例,然后索引多次“car”在列表中,但如果我这样做,那么只返回第一个实例?

1 个答案:

答案 0 :(得分:2)

my_list = ["car", "bus", "car", "truck", "van", "bus", "truck"]
my_list[:] = ["bikes" if ele == "car" else ele for ele in my_list]

my_list
['bikes', 'bus', 'bikes', 'truck', 'van', 'bus', 'truck']

要使索引使用enumerate

indexes = [ind for ind,ele in enumerate(my_list) if ele =="car"]

车辆数量将是指数列表的长度:

car_count = len(indexes)