我正在尝试打印列表列表中的第一项.这就是我所拥有的:
我的清单是这样的:
['32 2 6 6', '31 31 31 6', '31 2 6 6']
Run Code Online (Sandbox Code Playgroud)
我的代码是:
from operator import itemgetter
contents = []
first_item = list(map(itemgetter(0), contents))
print first_item
Run Code Online (Sandbox Code Playgroud)
但是itemgetter只返回:['3','3','3']而不是['32','31','31']我可以使用分隔符吗?
您正在处理字符串列表,因此您将获得每个字符串的第一个索引,实际上3是所有字符串的索引.你应该做的是理解你在空间上拆分每个字符串(这是拆分的默认值)并得到第一个索引:
first_element = [s.split(None, 1)[0] for s in contents]
Run Code Online (Sandbox Code Playgroud)
在理解中,每个的结果s.split(None, 1)实际上是=>
['32', '2 6 6'] ['31', '31 31 6'] ['31', '2 6 6']
你得到了第一个索引.
输出:
['32', '31', '31']
Run Code Online (Sandbox Code Playgroud)