2015-01-09 2 views
-1

У меня есть файл CSV, который я читаю, как показано ниже. Мне нужно получить первое слово из всех строк. Я знаю, как получить первое письмо, но я не уверен, как я могу получить слова.Получить первое слово из всех элементов списка

['diffuse systemic sclerosis', 'back', 'public on july 15 2008'] 
['diffuse systemic sclerosis', 'forearm', 'public on may 9 2014'] 

Я хочу, чтобы мой выход будет

diffuse 
back 
public 
forearm 

ответ

3

Вы можете использовать список понимание и split() функция:

>>> l=['diffuse systemic sclerosis', 'back', 'public on july 15 2008'] 
>>> [i.split()[0] for i in l] 
['diffuse', 'back', 'public'] 
+0

Отлично! Спасибо. – abn

0

Вы можете использовать понимание

>>> l = [['diffuse systemic sclerosis', 'back', 'public on july 15 2008'] 
,['diffuse systemic sclerosis', 'forearm', 'public on may 9 2014']] 

>>> list({i.split()[0] for j in l for i in j}) 
['back', 'diffuse', 'forearm', 'public'] 
+0

Почему downvotes? Есть идеи? –

0
l = [ 
    ['diffuse systemic sclerosis', 'back', 'public on july 15 2008'], 
    ['diffuse systemic sclerosis', 'forearm', 'public on may 9 2014'] 
    ] 
d = lambda o: [a.split().pop(0) for a in o] 
r = lambda a,b: d(a) + d(b) 
print "\n".join(set(reduce(r, l))) 
>>> 
public 
forearm 
diffuse 
back