逗号代码
假定有下面这样的列表:
spam = ['apples', 'bananas', 'tofu', 'cats']
编写一个函数,它以一个列表值作为参数,返回一个字符串。该字符串包含所
有表项,表项之间以逗号和空格分隔,并在最后一个表项之前插入 and。例如,将
前面的 spam 列表传递给函数,将返回’apples, bananas, tofu, and cats’。但你的函数应
该能够处理传递给它的任何列表。
def string(listing):
listing.insert(len(listing)-1,'and')
st = ''
"""
简单点
for ls in listing[:len(listing)-1]:
if ls != 'and':
st += ls + ','
pass
else:
st += ls + ' '
pass
st += listing[-1]
"""
for ls in listing:
if ls != 'and' and ls != listing[-1]:
st += ls + ','
elif ls == listing[-1]:
st += ls
else:
st += ls + ' '
return st
spam = ['apples','bananas','tofu','cats']
sm = string(spam)
print(sm)
字符图网格
假定有一个列表的列表,内层列表的每个值都是包含一个字符的字符串,像这样:
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....
代码如下:
grid = [['.', '.', '.', '.', '.', '.'],
['.', '0', '0', '.', '.', '.'],
['0', '0', '0', '0', '.', '.'],
['0', '0', '0', '0', '0', '.'],
['.', '0', '0', '0', '0', '0'],
['0', '0', '0', '0', '0', '.'],
['0', '0', '0', '0', '.', '.'],
['.', '0', '0', '.', '.', '.'],
['.', '.', '.', '.', '.', '.']]
for x in range(len(grid[0])):
for y in range(len(grid)):
print(grid[y][x],end = '')
print(end = "\n")