Wenn Sie sich umschauen oder googeln, finden Sie nur C oder C ++ auf der Welt, daher müssen Sie die Quelle und Erklärung in C verstehen.
Referenzen für double for loop Beispielsätze in C. http://tokyo-ct.net/usr/kosaka/for_students/CIntro/loop/loop.html
zur Aussage.c
#include <stdio.h>
int main()
{
int i,j;
for (i=0;i<5;i++) {
for (j=0;j<10;j++) {
printf("*");
}
printf("\n");
}
return 0;
}
zur Aussage.py
#!/usr/bin/env python
import sys
for x in range(5):
for y in range(10):
sys.stdout.write('*')
sys.stdout.write('\n')
Ja, damit können Sie ein solches in C geschriebenes Modell in Ihrem Gehirn ersetzen und es so oft lesen, wie Sie möchten. Anstatt die Doppelschleife zu verstehen, fiel es mir mit Python schwer, der Druckausgabe automatisch Zeilenumbrüche hinzuzufügen. Wenn Sie die Zeile nicht mit ',' unterbrechen, ist sie leer und weist ein Leerzeichen von halber Breite auf. .. .. Es scheint, dass ich keine andere Methode als sys.stdout.write ('*') finden konnte, wenn ich versuchte, die Linie nicht zu durchbrechen. Sollte ich an diesem Punkt in der Lage sein, den Unterschied im Verhalten zu erfassen und richtig zu verwenden? Wann. ..
Ah, als ich die Tabelle mit neunundneunzig geübt habe, scheint das auf dem Display angezeigte Verhalten für die Zeilen mit nur "sys.stdout.write ('\ n')" und "print" dasselbe zu sein.
Neunundneunzig Tisch.py
#!/usr/bin/env python
import sys
for x in range(1,10):
for y in range(1,10):
print "{0:02d}".format(x*y),
# print
sys.stdout.write('\n')
Als diese Art von Verhalten notwendig war, verwendete AOJ es viele Male nur zum Drucken.
Abgesehen von dem Zweck, die Doppelschleife von C im Gehirn zu ersetzen, zeigte diese unerwartete Ernte einen geringfügigen Unterschied im Druckverhalten. Bei mehreren Mehrfachschleifen
Recommended Posts