2017-11-17 2 views
-3

so begann ich gerade Python zu lernen und fand diese 2 Zeilen Code zum Suchen mehrerer Indizes von Buchstaben in Strings/Listen. ich lieben würde, wenn einige von euch die zweite Linie für michBenötigen Sie diesen Code bitte vereinfacht

, vereinfachen kann
text= 'Allowed Hello Hollow' 
print [n for n in xrange(len(text)) if text.find('ll', n) == n] 

Ich weiß nicht, ob es nur eine Verknüpfung Artschreiben oder etwas ist, aber ich würde es vereinfachte mögen, Dank:

D
+0

Vielleicht die Liste Verständnis versuchen erklärt Dekonstruktion (die '[n für n in ... ] 'Teil) in eine' for' Schleife und sehen, wie es geht? –

+0

'l = []; für n in xrange (len (text)): wenn text.find ('ll', n) == n: l.append (n); 'dann' print l' – davedwards

+0

Sie sollten ernsthaft erwägen, Python 3 zu lernen , Python 2 wird 2020 sein offizielles End of Life erreichen. –

Antwort

0

Hier ist die "vereinfachte" Version

myList = [] 
for n in xrange(len(text)) : 
    if(text.find('ll', n) == n) : 
     list.append(n) 
print myList 

Diese answer die Syntax

+0

Ich glaube, Sie haben einen Fehler. 'xrange' ist für python 2, aber' print() 'ist für python 3. Machen Sie den Code für Python 2 oder 3, aber nicht etwas Hybrides. –

+0

@EnderLook Sie können Klammern mit der Anweisung 'print' verwenden. –

+0

@ cᴏʟᴅsᴘᴇᴇᴅ, oh, das wusste ich nicht. –

Verwandte Themen