文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>python之有效编程

python之有效编程

时间:2008-10-11  来源:pascal4123

过滤列表

Python 有一个内建 filter 函数,它接受两个参数:一个函数和一个列表,返回一个列表。
filter 返回的列表将会包含可以令该函数返回真(true)的传入列表中的元素。
例如
def foo(n):
    return n>10

>>>filter(foo, [100,-10,3,20,0,1])
[100,20]

当然,可以以遍历列表的形式晚上上述工作。但filter更清晰,易懂。试图在循环中改变数据结构是很容易出问题的。

关联列表

map 函数是filter的伴侣,map 接受一个函数和一个列表作为参数,并以列表中每个元素顺序地调用函数返回一个新的列表。
def foo(n):
    return n*2

>>>map(foo, [1,3,5]
[2,6,8]

数据中心思想编程
使用 map 和 filter 的一个好处是强迫你围绕数据进行思考。
费力不讨好的编程不重要,数据重要。 并且数据并不难,他们不过就是数据。 如果多了,就过滤。 如果不是我们要的,就关联。 聚焦在数据上,摒弃费力的劳作。少用for循环,多用map或filter。

动态载入模块

正常的导入模块:import module 语法查看搜索路径寻找已命名模块并以名字导入它们。

内建 __import__ 函数与 import 语句的既定目标相同,但它是一个真正的函数,并接受一个字符串参数。
>>>moduleNames = ['sys','os','re']
>>>modules = map(__import__, moduleNames)
[<module 'sys' (built-in)>, <module 'os' from 'c:\Python22\lib\os.pyc'>, <module 're' from 'c:\Python22\lib\re.pyc'>]
>>>modules[0].version
'2.4.4 (#37, Oct 18 2006, 10:24:37) [MSC vi.1310 32 bit (Intel)]'
>>>import sys
>>>sys.version
'2.4.4 (#37, Oct 18 2006, 10:24:37) [MSC vi.1310 32 bit (Intel)]'
相关阅读 更多 +
排行榜 更多 +
找茬脑洞的世界安卓版

找茬脑洞的世界安卓版

休闲益智 下载
滑板英雄跑酷2手游

滑板英雄跑酷2手游

休闲益智 下载
披萨对对看下载

披萨对对看下载

休闲益智 下载