Python-Übungsbeispiel 23

Python 100例Python 100 Beispiele

Problem:Geben Sie das folgende Muster (Raute) aus:

   *
  ***
 *****
*******
 *****
  ***
   *

Programmanalyse:Teilen Sie das Muster zunächst in zwei Teile: Die ersten vier Zeilen folgen einer Regel, und die letzten drei Zeilen folgen einer anderen Regel. Verwenden Sie eine doppelte for-Schleife, wobei die äußere Schleife die Zeilen und die innere Schleife die Spalten steuert.

Programmquellcode:

Beispiel

#!/usr/bin/python # -*- coding: UTF-8 -*- from sys import stdout for i in range(4): for j in range(2 - i + 1): stdout.write(' ') for k in range(2 * i + 1): stdout.write('*') print('') for i in range(3): for j in range(i + 1): stdout.write(' ') for k in range(4 - 2 * i + 1): stdout.write('*') print('')

Beispiel (Python3)

def print_diamond(rows):
    # Obere Hälfte
    for i in range(1, rows, 2):
        spaces = " " * ((rows - i) // 2)
        stars = "*" * i
        print(spaces + stars)

    # Untere Hälfte
    for i in range(rows, 0, -2):
        spaces = " " * ((rows - i) // 2)
        stars = "*" * i
        print(spaces + stars)

# Anzahl der Zeilen festlegen; kann nach Bedarf angepasst werden.
rows = 7
print_diamond(rows)

Die Ausgabe des obigen Beispiels ist:

   *
  ***
 *****
*******
 *****
  ***
   *

Python 100例Python 100 Beispiele

Andere Erweiterungen