2017-10-25 12 views
0

Ich habe die folgende Liste von Listen():Python - Split-Strings in Worte innerhalb einer Liste von Listen

[[u' why not giving me service'], [u' option to'], [u' removing an'], [u' verify name and '], [u' my credit card'], [u' credit card'], [u' theres something on my visa']] 

und ich habe folgende Fragen: Erstens, was diese u' vor jedem erscheint, sind meiner Unterlisten? Zweitens, wie kann ich meine Unterlisten in separate Worte plit, haben das heißt so etwas wie dieses:

[[why, not, giving, me, service], [option, to], [removing, an], [verify, name, and], [my, credit, card], [credit, card], [theres, something, on, my, visa]] 

Ich habe bereits versucht die split Funktion, aber ich bekomme die folgende Fehlermeldung: AttributeError: 'list' object has no attribute 'split' Thanx viel.

+1

' u'' zeigt an, dass der String Unicode ist. Listen haben keine Split-Methode. Strings tun. – yesemsanthoshkumar

+0

look up flatten Liste der Listen – citizen2077

Antwort

0

Code:

list_1 = [[u' why not giving me service'], [u' option to'], [u' removing an'], [u' verify name and '], [u' my credit card'], [u' credit card'], [u' theres something on my visa']] 
res = [] 
for list in list_1: 
    res.append(str(list[0]).split()) 

print res 

Ausgang:

[['why', 'not', 'giving', 'me', 'service'], ['option', 'to'], ['removing', 'an'], ['verify', 'name', 'and'], ['my', 'credit', 'card'], ['credit', 'card'], ['theres', 'something', 'on', 'my', 'visa']] 

u‘ Unicode repräsentiert, ich hoffe, Ihre Frage damit

2

Mit str.split() Funktion:

l = [[u' why not giving me service'], [u' option to'], [u' removing an'], [u' verify name and '], [u' my credit card'], [u' credit card'], [u' theres something on my visa']] 

result = [_[0].split() for _ in l] 
print(result) 

Der Ausgang:

[['why', 'not', 'giving', 'me', 'service'], ['option', 'to'], ['removing', 'an'], ['verify', 'name', 'and'], ['my', 'credit', 'card'], ['credit', 'card'], ['theres', 'something', 'on', 'my', 'visa']] 
+1

Warum verwenden Sie einen Unterstrich tho? –

+0

Nun ja, Upvoters, das ist extrem einfach, aber es berücksichtigt nicht zum Beispiel '[[u'a b c ', u'd e f'], [..]]' -> mehrere Strings in eine innere Liste. –

+0

Lustigerweise habe ich mich gefragt, warum ich den Unterstrich verwende ... Kannst du mir erklären, warum er keinen richtigen Namen hat? – Jblasco

0
x=[[u' why not giving me service'], [u' option to'], [u' removing an'], [u' verify name and '], [u' my credit card'], [u' credit card'], [u' theres something on my visa']] 
[[y.split() for y in m] for m in x] 

der Ausgang davon ist hier antwortet:

In [3]: [[y.split() for y in m] for m in x] 
Out[3]: 
[[[u'why', u'not', u'giving', u'me', u'service']], 
[[u'option', u'to']], 
[[u'removing', u'an']], 
[[u'verify', u'name', u'and']], 
[[u'my', u'credit', u'card']], 
[[u'credit', u'card']], 
[[u'theres', u'something', u'on', u'my', u'visa']]] 
Verwandte Themen