Wie läuft es in der for-Schleife ab? [Duplikat]

10

In Java habe ich die folgende for-Schleife und ich lerne Python:

%Vor%

Meine Frage ist einfach und wahrscheinlich für die meisten Leute, die mit Python vertraut sind, offensichtlich. Ich möchte diese 'for' Schleife in Python programmieren. Wie kann ich das tun?

Ich habe versucht folgendes zu tun:

%Vor%

Ich denke, es sollte range(last-1, posn + 1, -1) sein. Habe ich Recht?

Ich bin allen besonders dankbar, die mir erklären werden, wie man die Indizes in Python versteht.

    
Jika 27.03.2015, 02:06
quelle

4 Antworten

22

Die Bereichsfunktion in Python hat die Syntax:

range(start, end, step)

Es hat dieselbe Syntax wie Python-Listen, bei denen der Start inklusive ist, aber das Ende ist exklusiv.

Wenn Sie also von 5 bis 1 zählen möchten, verwenden Sie range(5,0,-1) . Wenn Sie von last bis posn zählen möchten, verwenden Sie range(last, posn - 1, -1) .

    
Loocid 27.03.2015, 02:11
quelle
7

Wenn Sie iterable haben, iterieren Sie in Python normalerweise ohne einen Index:

%Vor%

Wenn Sie das Iterable in umgekehrter Reihenfolge durchlaufen müssen, tun Sie Folgendes:

%Vor%

Wenn Sie den Index aus irgendeinem Grund benötigen, können Sie enumerate :

verwenden %Vor%

Sie können auch in umgekehrter Reihenfolge aufzählen ...

%Vor%

EIN ANDERER HINWEIS ...

Wenn wir ein iterables Verfahren durchlaufen, machen wir normalerweise dasselbe Verfahren oder dieselbe Funktion für jedes Element. In diesen Fällen ist es besser, map :

zu verwenden

Wenn wir jeden Buchstaben kapitalisieren müssen:

%Vor%

Oder Sie erhalten den Unicode-Code für jeden Buchstaben:

%Vor%     
chapelo 27.03.2015 02:31
quelle
3

Zuerst empfehle ich, dass Sie versuchen, drucken und beobachten Sie die Aktion:

%Vor%

das Ergebnis:

%Vor%

Sie können das Funktionsprinzip verstehen. Tatsächlich ist range scan range von 0 bis 5-1 . Es entspricht 0 <= i < 5

Wenn Sie for-loop in Python wirklich verstehen, denke ich, dass es an der Zeit ist, wieder zur Sache zu kommen. Lassen Sie uns Ihr Problem konzentrieren.

Sie möchten eine DECREMENT for-Schleife in Python verwenden. Ich schlage beispielsweise ein Tutorial vor.

%Vor%

das Ergebnis:

%Vor%

So sieht man, dass es gleich 5 >= i > 0

ist

Sie möchten Ihren Java-Code in Python implementieren:

%Vor%

Es sollte dies kodieren:

%Vor%     
Burger King 27.03.2015 02:27
quelle
2

Wenn Sie googeln. "Count down for Schleife python" Sie erhalten diese, die ziemlich genau sind.

wie man in der Python-Liste (Countdown) fortfährt
Schleife rückwärts mit Indizes in Python?

Ich empfehle kleinere Suchen vor dem Posten. Auch "Lerne Python The Hard Way" ist ein guter Anfang.

    
BiTinerary 27.03.2015 02:18
quelle

Tags und Links