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

Python中的列表生成器与高级特性

2017-07-16 21:58 513 查看

一、基础

Python中的函数名即是变量名,用法与变量相同。函数名对它赋值就作为变量,传递参数就作为函数使用。

Python中无常量的定义。

isinstance()

给定一个list或者tuple,通过for循环来遍历这个list或者tuple、这种遍历就是迭代(iteration)。只要是可迭代的对象都可以进行迭代、怎么判断一个对象是否是可迭代的对象呢?可以用collections模块里面的iterable包的isinstance函数进行判断:

>>> from collections import Iterable#载入模块
>>> isinstance('abc',Iterable) #字符串是可迭代对象吗?
True
>>> isinstance([1,2,3],Iterable) #list是可迭代对象吗?
True
>>> isinstance({'dede':123},Iterable) #字典是可迭代对象吗?
True


二、高级特性

map函数

>>> def foo(x):
return x**2

>>> list(map(foo,list(range(10))))
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]


reduce函数

两种导入方式

import functools

将导入functools下的所有函数

from functools import reduce

将只导入reduce函数

>>> def add(x,y):
return x+y

>>> from functools import reduce
>>> reduce(add,list(range(1,10)))
45


filter过滤函数

>>> mylist=list(range(1,21))
>>> def isodd(x):
return x%2==1
>>> oddlist=filter(isodd,mylist)
>>> for i in oddlist:
print(i)
1
3
5
7
9
11
13
15
17
19


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