问题描述
list[s] 是一个字符串.为什么这不起作用?
list[s] is a string. Why doesn't this work?
出现如下错误:
TypeError:列表索引必须是整数,而不是 str
TypeError: list indices must be integers, not str
list = ['abc', 'def'] map_list = [] for s in list: t = (list[s], 1) map_list.append(t)
推荐答案
list1 = ['abc', 'def'] list2=[] for t in list1: for h in t: list2.append(h) map_list = [] for x,y in enumerate(list2): map_list.append(x) print (map_list)
输出:
>>> [0, 1, 2, 3, 4, 5] >>>
这正是你想要的.
如果你不想到达每个元素,那么:
If you dont want to reach each element then:
list1 = ['abc', 'def'] map_list=[] for x,y in enumerate(list1): map_list.append(x) print (map_list)
输出:
>>> [0, 1] >>>