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

Python中几个内置函数和其他

2011-04-26 21:14 423 查看
type:返回任意对象的数据类型.

>>> li = []

>>> type(li)

<type 'list'>

>>>

str函数:将数据强制转换为字符串。每种数据类型都可以强制转换为字符串

>>> str(1)

'1'

>>> horsemen = ['war','perstilence']

>>> str(horsemen)

"['war', 'perstilence']"

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

>>> li =[]

>>> dir(li)

['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__delsli

ce__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getit

em__', '__getslice__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__',

'__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__r

educe__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__'

, '__setitem__', '__setslice__', '__sizeof__', '__str__', '__subclasshook__', 'a

ppend', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort'

]

getattr:获取对对象的引用:

>>> li =["larry","curlu"]

>>> li.pop

<built-in method pop of list object at 0x00BA71C0>

>>>

>>>

>>> getattr(li,"pop")

<built-in method pop of list object at 0x00BA71C0>

>>> getattr(li,"append")("mor")

>>> li

['larry', 'curlu', 'mor']

注意:由于元组没有任何方法,因此,对元组使用该方法会产生一个异常。

>>>
getattr((), "pop"
)

Traceback (innermost last):

File "<interactive input>", line 1, in ?

AttributeError: 'tuple' object has no attribute 'pop'


getattr作为分发器:

例如,让我们假设有一个以 HTML
、XML
和普通文本格式打印站点统计的程序。输出格式在命令行中指定,或者保存在配置文件中。statsout
模块定义了三个函数:output_html
、output_xml
和 output_text


import
statsout

def
output
(data, format="text"
):

output_function = getattr(statsout, "output_%s"
% format, statsout.output_text)

return
output_function(data)


过滤列表:

过滤列表语法:

[mapping-expression

for
element

in
source-list

if
filter-expression

]


>>> li = ["a","dds","vgf","b","c","b"]

>>> [elem for elem in li if len(elem)>1]

['dds', 'vgf']

>>>

>>> [elem for elem in li if li.count(elem)==1]

['a', 'dds', 'vgf', 'c']

>>>

and 和or:在Python
中,and
和 or
执行布尔逻辑演算。但是它们并不返回布尔值,而是返回它们实际进行比较的值之一。

1.lambda定义

python 允许用lambda 关键字创造匿名函数。下匿名函数的语法:

lambda [arg1[, arg2, ... argN]]: expression

参数是可选的,如果使用的参数话,参数通常也是表达式的一部分。

>>> a =
lambda
x, y=
2
: x + y

>>> a(3
)

5

>>> a(3
,
5
)

8

>>> a(0
)

2

>>> a(0
,
9
)

9

>>>

>>> b = lambda
*z: z

>>> b(23
,
'zyx'
)

(23
,
'zyx'
)

>>> b(42
)

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