Numerische Muster in Python3

Diese Frage hat hier schon eine Antwort:

  • So drucken Sie ohne newline oder space? 26 antworten

Ich bin ziemlich neu für die Programmierung, ich muss anfangen, es für Uni zu lernen.

Ich muss ein Muster wie folgt machen:

5 4 3 2 1 4 3 2 1 3 2 1 2 1 1 

Ich habe reichlich Beispiele für Code für diese Muster gefunden, nur nicht für meine.

Ich kann nicht scheinen, um die Zahlen zu vertikal, nur untereinander:

 5 4 3 2 1 4 3 2 1 

Was vermisse ich ? Ich kann nicht scheinen, die genaue Funktion zu finden, die andere Leute benutzen, um ihren Code so zu handeln.


 # Question 4. import random num1 = random.choice([5, 6, 7, 8, 9, 10]) def print_triangle(): for row in range(num1, 0, -1): for space in range(num1 - row): print ('') for col in range(row, 0, -1): print (col) print_triangle() 

3 Solutions collect form web for “Numerische Muster in Python3”

Bearbeiten von Ducky:

 import random num1 = random.choice([5, 6, 7, 8, 9, 10]) def print_triangle(): for row in range(num1, 0, -1): for num in range(row, 0, -1): print(str(num) + " ", end="") print() print_triangle() 

Meine Antwort:

 def print_triangle(): for row in range(10, 4, -1): for num in range(row, 0, -1): print(str(num) + " ", end="") print() print_triangle() 

Ausgabe:

 10 9 8 7 6 5 4 3 2 1 9 8 7 6 5 4 3 2 1 8 7 6 5 4 3 2 1 7 6 5 4 3 2 1 6 5 4 3 2 1 5 4 3 2 1 

Oder benutzen:

 def print_triangle(max_val, min_val): for row in range(max_val, min_val - 1, -1): for num in range(row, 0, -1): print(str(num) + " ", end="") print() print_triangle(10, 5) 
 for j in range(5, 0, -1): line = '' for i in range(j, 0, -1): line += str(i) + ' ' print line 

Die print setzt jede Ausgabe auf eine neue Zeile.

Versuchen

 s = "" #make a string s = s + " " + str(the number you want to print) 

Und dann s drucken, wenn jede Zeile fertig ist.

Python ist die beste Programmiersprache der Welt.