Collatz 序列、逗号代码、字符图网格


本文摘自php中文网,作者巴扎黑,侵删。

1.collatz序列

  编写一个名为 collatz()的函数,它 有一个名为 number 的参数。如果参数是偶数, 那么 collatz()就打印出 number // 2,并返回该值。如果 number 是奇数,collatz()就打 印并返回 3 * number + 1。 然后编写一个程序,让用户输入一个整数,并不断对这个数调用 collatz(),直 到函数返回值1。

1

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

输出结果:

1

1 Input a number: 6 2 6 3 3 4 10 5 5 6 16 7 8 8 4 9 210 1

2.逗号代码

假定有下面这样的列表: spam = ['apples', 'bananas', 'tofu', 'cats']
  编写一个函数,它以一个列表值作为参数,返回一个字符串。该字符串包含所 有表项,表项之间以逗号和空格分隔,并在最后一个表项之前插入and。例如,将前面的 spam 列表传递给函数,将返回'apples, bananas, tofu, and cats'。但你的函数应该能够处理传递给它的任何列表。

1

<br>

1

<span style="color: #808080">#!/usr/bin/env python3<br><span style="color: #808080"># -*- coding:utf-8 -*-<br><span style="color: #808080"><br><span style="color: #cc7832; font-weight: bold">def <span style="font-weight: bold">func(spam):<br>    spam[-<span style="color: #6897bb">1]=<span style="color: #008080">'and'+ <span style="color: #008080">' ' + spam[-<span style="color: #6897bb">1]<br><span style="color: #cc7832; font-weight: bold">for i <span style="color: #cc7832; font-weight: bold">in <span style="color: #8888c6">range(<span style="color: #8888c6">len(spam)):<br><span style="color: #8888c6">print(spam[i]<span style="color: #cc7832">, <span style="color: #aa4926">end=<span style="color: #008080">',')<br><br><br>spam = [<span style="color: #008080">'apple'<span style="color: #cc7832">, <span style="color: #008080">'bananas'<span style="color: #cc7832">, <span style="color: #008080">'tofu'<span style="color: #cc7832">, <span style="color: #008080">'cats'<span style="color: #cc7832">, <span style="color: #008080">'dog']<br>func(spam)<br>#输出结果<br>apple,bananas,tofu,cats,and dog,<br></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span>

3.字符图网格

假定有一个列表的列表,内层列表的每个值都是包含一个字符的字符串,像这样:

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', 'O', '.', '.', '.'],

['.', '.', '.', '.', '.', '.']]

你可以认为 grid[x][y]是一幅“图”在 x、y 坐标处的字符,该图由文本字符组成。原点(0, 0)在左上角,向右 x 坐标增加,向下 y 坐标增加。 复制前面的网格值,编写代码用它打印出图像。

..OO.OO..

.OOOOOOO.

.OOOOOOO.

..OOOOO..

...OOO...

....O....

1

2

3

4

5

6

7

8

9

10

11

12

13

14

    grid =     [, , , , ,      [, , , , ,      [, , , , ,      [, , , , ,      [, , , , ,      [, , , , ,      [, , , , ,      [, , , , ,      [, , , , ,  #嵌套循环  n       m          (grid[m][n], end=     ()#换行

 

#输出结果

..OO.OO..

 

.OOOOOOO.

 

.OOOOOOO.

 

..OOOOO..

 

...OOO...

 

....O....

以上就是Collatz 序列、逗号代码、字符图网格的详细内容,更多文章请关注木庄网络博客!!

相关阅读 >>

Python爬虫需要学什么

网络编程详细介绍

Python对xml文件解析

Python能做什么的

Python遍历文件夹下所有文件

Python怎么输入字符串

Python如何绘制长方形

Python代码段有哪些

Python使用matplotlib实现的图像读取、切割裁剪功能示例

Python如何处理excel数据

更多相关阅读请进入《Python》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...