python逗号代码_逗号代码和字符图网络

逗号代码-python3

假定有下面这样的列表:

spam=['apples','bananas','tofu',' cats','grape']

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

代码如下:

importcopydefgetstring(list2):

list1=copy.copy(list2)

list1.insert(-1,'and')

last1=list1.pop()

last2=list1.pop()

last12= last2+' '+last1

spam=list1[0]

j=1

for i inrange(len(list1)):

spam=spam+','+list1[j]

j= j+1

if j ==len(list1):break

print(spam+','+last12)

spam= ['apple','bananas','tofu','cats','grape']

getstring(spam)

验证代码:

996981-20170222155425601-1092350444.png

字符图网格

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

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

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

你可以认为grid[x][y]是一幅“图”在x,y坐标处的字符,该图由文本字符组成。原点(0,0)在左上角,向右x坐标增加,向下y坐标增加。

复制前面的网格值,编写代码用它打印图像。

..OO.OO..

.OOOOOOO.

.OOOOOOO.

..OOOOO..

...OOO...

....O....

提示:你需要使用循环嵌套循环,打印出grid[0][0],然后grid[1][0],然后grid[2][1],以此类推,知道grid[8][0]。这就完成第一行,所以接下来打印换行。然后程序将打印出grid[0][1],然后grid[1][1],然后grid[2][1],以此类推。程序最后将打印出grid[8][5]。

而且,如果你不希望在每次print()调用后都自动打印换行,记得向print()传递end关键字参数。

代码如下:

defgrid1(list1):for i inrange(len(list1[0])):for j inrange(len(list1)):print(list1[j][i],end=' ')if j ==len(list1)-1:print('\n')

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

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

grid1(grid)

验证如下:

996981-20170222182430913-2085209865.png

这次练习,总体上来说把列表的 所有功能都练习到了,len()函数,for循环,连接操作符和复制操作符,切片,下标取值,pop()方法,insert()方法,apend()方法。

还有print('error',end=' ')使用方法。

但是

print(list1[j][i],end=' ')这种写法在pycharm中认为错误,我至今也没有找到原因,还请各位大神能给指导出错误所在,以及如何改进。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值