还剩2页未读,继续阅读
文本内容:
学习教程资源:切片代码练习PYTHON取一个或的部分元素是非常常见的操作比如,一个如下list tuple list L=[Michael,Sarah,Tracy,Bob,‘Jack]取前个元素,应该怎么做笨办法3「⑵»[L
[0],L[l],L]Michael,Sarah,Tracy一之所以是笨办法是因为扩展一下,取前个元素就没辙了取前个元素,也就N N是索引为的元素,可以用循环0-N-1»r=[]»n=3for inirangen:・・・r.appendL[i]•••»r「Michael,Sarah,Tracy对这种经常取指定索引范围的操作,用循环十分繁琐,因此,提供了切Python片操作符,能大大简化这种操作Slice对应上面的问题,取前个元素,用一行代码就可以完成切片3»L[0:3][Michael,Sarah,Tracy表示,从索引开始取,直到索引为止,但不包括索引即索引L[0:3]0330,1,正好是个元素2,3如果第一个索引是还可以省略:0,»L[:3][Michael,Sarah,Tracy也可以从索引开始,取出个元素出来12»L[l:3][Sarah,Tracy]类似的,既然支持取倒数第一个元素,那么它同样支持倒数切片,试Python试»L[-2:][BobJack]»L[-2-l][Bob]记住倒数第一个元素的索引是巨切片操作十分有用我们先创建一个的数列0-99L=list range100»L・・[0,1,2,3,.,99]可以通过切片轻松取出某一段数列比如前个数10»L[:10][0,1,2,3,4,5,6,7,8,9]后个数10»L[-10:][90,91,92,93,94,95,96,97,98,99]前个数11-20»L[10:20][10,11,12,13,14,15,16,17,18,19]前个数,每两个取一个10»L[:10:2]4,[0,2,6,8]所有数,每个取一个5»L[::5][0,5,10,15,20,25,30,35,40,45,50,55,60,65,70,75,80,85,90,95]甚至什么都不写,只写[:]就可以原样复制一个list»L[:].,・・[0,1,2,3,99]也是一种唯一区别是不可变因此,也可以用切片操作,tuplelist,tuple tuple只是操作的结果仍是tuple»0,1,2,3,4,5[:3]0,1,2一学符串,也可以看成是一•种每不元素就是一个字符由此,士人串也可[xx list,以用切片操作,只是操作结果仍是字符串»ABCDEFG[:3]ABC»ABCDEFG[::2]ACEG在很多编程语言中,针对字符串提供了很多各种截取函数例如,其substring,实目的就是对字符串切片没有针对字符串的截取函数,只需要切片一个操Python作就可以完成,非常简单练习利用切片操作,实现一个函数,去除字符串首尾的空格,注意不要调用mm的方法str strip#coding:utf-8def trims:#测试if trim1hello1!=1hello1:,测试失败!,printelif trim1hello1!=1hello1:「测试失败!1printelif trimChello!=1hello:「测试失败!1printelif trim1hello world1!=1hello world1:,测试失败!,print eliftrim**!=11测试失败!,printelif trim!=1:,测试失败!1printelse:,测试成功!1printRun。
个人认证
优秀文档
获得点赞 0