2015-08-06 13 views
14

Ich wollte wissen, wie man eine Zeichenfolge Wort für Wort durchläuft.Iterating durch eine Zeichenfolge Wort für Wort

string = "this is a string" 
for word in string: 
    print (word) 

Die obige Abbildung zeigt einen Ausgang:

t

h

i

s

i

s

a

s

t

r

i

n

g

Aber ich bin für die folgende Ausgabe:

diese

ist

ein

String

+0

Ziemlich eng vorherige Frage im Zusammenhang (wenn auch nicht ein exaktes Duplikat) ist http://stackoverflow.com/questions/6181763/converting-a-string-to-a-list-of-words – paisanco

Antwort

31

Wenn Sie das tun -

for word in string: 

Sie durchlaufen nicht die Wörter in der Zeichenfolge, Sie durchlaufen die Zeichen in der Zeichenfolge. Um die Wörter zu durchlaufen, müssen Sie zuerst die Zeichenfolge in Wörter unter Verwendung str.split() teilen und dann durchlaufen. Beispiel -

my_string = "this is a string" 
for word in my_string.split(): 
    print (word) 

Bitte beachten Sie, str.split(), ohne von allen Whitespaces alle Argumente Splits vorbei (Raum, mehrere Leerzeichen, Tabulator, Zeilenumbrüche usw.).

+0

hey, gibt es eine Möglichkeit, alle Räume zu pflegen und das Gleiche zu tun? –

+0

erhalten sie wo? –

+0

@MohitBhasi Vielleicht hast du es falsch verstanden? 'str.split() 'ist nicht inplace, es gibt nur die Liste der geplotteten Strings zurück, der ursprüngliche String ist noch intakt. –

5

Dies ist eine Möglichkeit, es zu tun:

string = "this is a string" 
ssplit = string.split() 
for word in ssplit: 
    print (word) 

Ausgang:

this 
is 
a 
string 
3
for word in string.split(): 
    print word 
+2

Sie sollten die 'Split' Methode erklären; Erwarte nicht, dass jeder weiß, was er tut oder warum du ihn benutzt hast. – jpaugh

+0

Entschuldigung? Ich verstehe nicht, warum die Leute hier so viel Einstellung geben. – Connor

+4

Mein Kommentar war knapp, aber nicht als Beleidigung gemeint. Ich will nur [so] das Beste sein, was es sein kann. Code-only-Antworten sind schwer zu lesen und zu verstehen, vor allem für diejenigen, die nicht wissen, was Ihnen offensichtlich erscheint. Deshalb suchen sie hier nach einer Antwort. – jpaugh

Verwandte Themen