您的位置:首页 > 编程语言 > Python开发

Python高级特性

2019-06-13 07:35 1331 查看

Python力图简洁,Python中非常有用的高级特性,使得能以更少的代码做更多的事情,代码越少,则开发效率越高。以下是Python的几个高级特性.
1.切片
当我们要去获取list或者tuple的部分元素时,以前的思路是将其一一列举处理。Python提供了切片操作符来简化这种操作。

L[0:3]表示,从索引0开始取,直到索引3为止,但不包括索引3。即索引0,1,2,正好是3个元素。而且如果第一个索引值为0的话可以省略不写。L[m,n],表示从索引值为m的元素开始取,取到索引值为n-1的元素。
而且还可以倒着取,倒数第一个元素的索引为-1

还可以实行每几个取一个的方法,上面这个就是每两个取一个。
tuple也可以使用切片,需要注意的是,切片的结果仍然是元组类型不可改变。

2.迭代

如果给定一个list或tuple,我们可以通过for循环来遍历这个list或tuple,这种遍历我们称为迭代(Iteration)。

在Python中迭代通过 for…in来完成,Python的for循环不仅可以用在list或tuple上,还可以作用在其他可迭代对象上,例如dict。
因为dict不是按照list的方式顺序排列,所以dict迭代出的结果顺序很可能不一样
还有就是当需要对list实现下标循环时的操作,需要用到一个内置函数enumerate,它会使得list变成索引-元素对
3.列表生成式
倘若要生成一个1到10的列表,我们通常的第一做法就是,一个一个输。这种方法太麻烦,所以Python有内置的生成式。

那我们要是想生成一个一到十每个数的平方组成的列表,以前的思路就是利用循环,从1到10,然后平方,再使用append将元素存入列表

>>>L = []
>>>for x in range(1,11):
L.append(x*x)
>>>L
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

而现在列表生成式一个式子便可以完成
同时呢也可以在for后面再设置if条件来限制,比如必须要能够被3整除
所以用途是比较广的。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: