赞
踩
4.11.1 逗号代码
编写一个函数,它以一个列表作值作为参数,返回一个字符串。该字符串包含所有表项,表项之间以逗号和空格分隔,并在最后一个表项之前插入and。
具体代码如下:
- def listing(list):
- str = ''
- for i in range(len(list)):
- if i == len(list)-2:
- str += f'{list[i].title()} and '
- elif i == len(list)-1:
- str += f'{list[i].title()}'
- else:
- str += f'{list[i].title()}, '
- return str
-
-
- language = ['c++', 'c', 'python','java', 'javasprit', 'r']
-
- message = listing(language)
- print(message)
4.11.2 掷硬币的连胜
在本次练习中,我们将尝试做,一个实验。如果你掷硬币100次,并在每次正面时写下“H”,在每次反面时写下“T”,就会创建一个看起来像“TTTHHTHTTHHHH”这样的列表。如果你要求一个人进行100次随机掷硬币,你可能会得到正反交替的结果,例如“HHTTHTTTHHHT”。
编写一个程序,计算随机生成的正面和反列表中出现连续6个正面或者6个反面的频率。将程序分成两个部分:
第一部分,创建一个函数,生成随机选择的“正面”和“反面”值的列表。
第二部分,检查其中是否由连续6个正面或者反面。
将这些代码放入一个循环中,重复实验1000次,检查出现连续6个正面或者反面的实验次数,并计算出现的频率。
具体代码如下:
调用random.randint(0, 1)来模拟掷硬币的结果。
- import random
-
- number_f = 0
- number_n = 0
- f = 'FFFFFF'
- n = 'NNNNNN'
-
-
- def decision():
- str = ''
- for i in range(100):
- number = random.randint(0, 1)
- if number == 0:
- str += 'N'
- else:
- str += 'F'
- return str
-
-
- for experimentNumber in range(1000):
- experiment = decision()
-
- if f in experiment:
- number_f += 1
- if n in experiment:
- number_n += 1
-
- print(f'The percentage of "FFFFFF" is {number_f / 10}%')
- print(f'Tht percentage of "NNNNNN" is {number_n / 10}%')
4.11.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坐标增加。
复制前面的网格值,编写代码用它输出图像:
- . . 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 . . . .
具体代码如下:
(这是一个心型,看出来了吗?为了让这个心型更美观一些,我们可以用空格连接列表的值。)
- def picture(test):
- for j in range(len(test[0])):
- for i in range(len(test)):
- print(test[i][j], end=' ')
- print()
-
-
- 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', '.', '.', '.'],
- ['.', '.', '.', '.', '.', '.']]
-
- picture(grid)
创作不易,请大家给个三连哦!!!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。