一碗书小说网

Python :Dive Into Python 中文版 读后感_第四章__函数定义以及内置函数

函数参数的一些细节:

           1:函数的参数值可以预定义 比如:def info(object, spacing=10, collapse=1):

           2:调用的时候参数的顺序可以是乱序,但必须指定(不推荐)比如:info(spacing=15, object=odbchelper)

     本质:其实函数的参数只不过是一个字典。“通常” 不使用参数名称的函数调用只是一个简写的形式。

 

常用的内置函数(__buildin__模块):

          1:type: 返回任意对象的函数类型,包括数字,字符串,内置数据结构,类,模块..(一切都是对象,记得吗?)...  用法: type(1)  --> int

          2:  str:将数据强制转换为字符串。每种数据类型都可以强制转换为字符串. 用法:str(54) --> '54'

          3: dir: 返回任意对象的属性和方法列表,包括模块对象、函数对象、字符串对象、列表对象、字典对象 ……

                           例子:li = []; dir(li)  --> ['append', 'count', 'extend', 'index', 'insert','pop', 'remove', 'reverse', 'sort']  (还是一切都是对象....)

          4:callable 函数,它接收任何对象作为参数,如果参数对象是可调用的,返回 True;否则返回 False

      5:  getattr(obj,str,[default]), 传入对象以及它对应的方法名(字符串),返回 传入对象的子对象

          6: 过滤列表:[mapping-expression for element in source-list if filter-expression]

                      ex: [element*2 for element in list if element > 2]

          7: and-or : 返回得出结论的值(0''[](){}None 在布尔环境中为假;其它任何东西都为真)

                          ex:           'a' and 'b'        ---> 'b';     '' and 'b'  -->  ''

                                           'a' or 'b'    -->  'a'          '' or 'b' --> 'b'

                   1 and a or b (a 不为空) = bool? a:b

          8: lambda为匿名函数,可以接收任意多个参数 (包括可选参数) 并且返回单个表达式的值。lambda 函数不能包含命令,包含的表达式不能超过一个。

                     ex: fuc = lambda x: x*2; fuc(2);

posted @ 2012-07-16 18:00  艾尔维斯的L  阅读(184)  评论(0编辑  收藏  举报
一碗书小说网