Heim >Backend-Entwicklung >Python-Tutorial >Collatz-Sequenzen, Kommacodes, Zeichentabellengitter
1.collatz-Sequenz
Schreiben Sie eine Funktion namens collatz(), die einen Parameter namens number hat. Wenn das Argument eine gerade Zahl ist, gibt collatz() die Zahl // 2 aus und gibt diesen Wert zurück. Wenn die Zahl ungerade ist, gibt collatz() 3 * Zahl + 1 aus und gibt es zurück. Schreiben Sie dann ein Programm, das dem Benutzer die Eingabe einer Ganzzahl ermöglicht und kontinuierlich collatz() für diese Zahl aufruft, bis die Funktion den Wert 1 zurückgibt.
1 #!/usr/bin/env python3 2 # -*- coding:utf-8 -*- 3 4 def collatz(number): 5 print(number) 6 if number ==1: 7 return number 8 elif number % 2 ==0: 9 return collatz(number//2)10 else:11 return collatz(3*number +1)12 13 A = int(input('Input a number: '))14 while True:15 if collatz(A) != 1:16 continue17 else:18 break
Ausgabeergebnis:
1 Input a number: 6 2 6 3 3 4 10 5 5 6 16 7 8 8 4 9 210 1
2. Kommacode
Angenommen, es gibt eine Liste wie die Folgendes: spam = ['apples', 'bananas', 'tofu', 'cats'] <br> Schreiben Sie eine Funktion, die einen Listenwert als Parameter akzeptiert und eine Zeichenfolge zurückgibt. Die Zeichenfolge enthält alle durch Kommas und Leerzeichen getrennten Einträge, wobei und vor dem letzten Eintrag eingefügt wird. Wenn Sie beispielsweise die vorherige Spam-Liste an die Funktion übergeben, werden „Äpfel, Bananen, Tofu und Katzen“ zurückgegeben. Aber Ihre Funktion sollte in der Lage sein, jede an sie übergebene Liste zu verarbeiten.
<br>
#!/usr/bin/env python3<br># -*- coding:utf-8 -*-<br><br>def func(spam):<br> spam[-1]='and'+ ' ' + spam[-1]<br>for i in range(len(spam)):<br>print(spam[i], end=',')<br><br><br>spam = ['apple', 'bananas', 'tofu', 'cats', 'dog']<br>func(spam)<br>#输出结果<br>apple,bananas,tofu,cats,and dog,<br>
3. Zeichendiagrammraster
Angenommen, es gibt eine Liste von Listen und jeder Wert der inneren Liste enthält eine Zeichenkette, z dies:
grid =[['.', '.', '.', '.', '.', '.'],
[' ', 'O', '.', '.', '.'],
['O', 'O', 'O', 'O', '.', '.'] ,
['O', 'O', 'O', 'O', 'O', '.'],
['.', 'O', 'O ', 'O', 'O', 'O'],
['O', 'O', 'O', 'O', 'O', '.'] ,
['O', 'O', 'O', 'O', '.', '.'],
['.', 'O', 'O ', '. ', '.', '.'],
['.', '.', '.', '.', '.', '.']]
Du kann sich „grid[x][y]“ als die Zeichen an den x- und y-Koordinaten eines „Bildes“ vorstellen, das aus Textzeichen besteht. Der Ursprung (0, 0) liegt in der oberen linken Ecke, die x-Koordinate nimmt nach rechts zu und die y-Koordinate nimmt nach unten zu. Kopieren Sie den vorherigen Rasterwert und schreiben Sie Code, um das Bild damit zu drucken.
..OO.OO..
.OOOOOOO.
.OOOOOOOO.
..OOOOO..
.. .OOO...
....O....
grid = [, , , , , [, , , , , [, , , , , [, , , , , [, , , , , [, , , , , [, , , , , [, , , , , [, , , , , #嵌套循环 n m (grid[m][n], end= ()#换行 #输出结果 ..OO.OO.. .OOOOOOO. .OOOOOOO. ..OOOOO.. ...OOO... ....O....
<br>
Das obige ist der detaillierte Inhalt vonCollatz-Sequenzen, Kommacodes, Zeichentabellengitter. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!