python标准类型内建模块_Python标准模块--built-ins函数

1.Python内置函数

2.Python内置函数举例

2.1 数学运算

abs,计算绝对值;

>>> abs(-1)

1

>>> abs(3)

3

round,四舍五入;

>>> round(2.9)

3.0

>>> round(2.45)

2.0

>>> round(-1.2)

-1.0

>>> round(-1.6)

-2.0

pow,计算幂;

>>> pow(2,3)#2**3

8

>>> pow(2,3,5)#2**3%5

3

cmp,比较两个数大小,返回0,表示相等,返回-1;表示左边数值小于右边数值;返回1,表示左边数值大于右边数值;

>>> cmp(2.3,2.3)

0

>>> cmp(2.3,2.4)

-1

>>> cmp(2.3,2.2)

1

divmod,返回除法的结果和余数;

>>> divmod(9,4)

(2, 1)

>>> divmod(9,3)

(3, 0)

max,求最大值;

>>> max([1,2,3,-1,0])

3

min,求最小值;

>>> min([1,2,3,-1,0])

-1

sum,求和;

>>> sum([1,2,3,4,5])

15

2.2 类型转换

int,转换为整数,integer;

>>> int("32")

32

>>> int("-2")

-2

>>> int("-1.2")

Traceback (most recent call last):

File "", line 1, in

int("-1.2")

ValueError: invalid literal for int() with base 10: '-1.2'

float,转换为浮点型,float;

>>> float("-1.2")

-1.2

>>> float("-1.20")

-1.2

>>> float("-0.3")

-0.3

>>> float("1")

1.0

long,转换为长整型,long integer;

>>> long("1234567890")

1234567890L

str,转换为字符串类型,string;

>>> str(123)

'123'

complex,转换为复数类型;

>>> complex(3,2)

(3+2j)

ord,转换为字符对应的数值;

>>> ord('a')

97

chr,转换为字符对应的数值;

>>> chr(97)

'a'

unichr,转换为数值对应的unicode字符;

>>> unichr(97)

u'a'

bool,转换为相应的真假值;

>>> bool(0)

False

>>> bool(1)

True

bin,返回一个字符串,表示一个数值的二进制数;

>>> bin(31)

'0b11111'

hex,返回一个字符串,表示一个一个数值的十六进制数;

>>> hex(31)

'0x1f'

oct,返回一个字符串,表示一个数值的八进制数;

>>> oct(31)

'037'

list,转换为列表;

>>> list((1,2,3,4))

[1, 2, 3, 4]

tuple,转换为定值表;

>>> tuple([1,2,3,4])

(1, 2, 3, 4)

slice,构建下标对象;

>>> a = [1,2,3,4,5]

>>> slices = slice(0,4,2)

>>> a[slices]

[1, 3]

dict,构建词典;

>>> dict(a=1,b=[1,2],c='hello')

{'a': 1, 'c': 'hello', 'b': [1, 2]}

2.3 序列操作

all,所有元素都相当与True;

>>> a = range(0,4)

>>> b = range(1,4)

>>> a

[0, 1, 2, 3]

>>> b

[1, 2, 3]

>>> all(a)

False

>>> all(b)

True

any,是否有任意一个元素相当于True;

>>> a = [0]

>>> b = range(0,4)

>>> a

[0]

>>> b

[0, 1, 2, 3]

>>> any(a)

False

>>> any(b)

True

sorted,返回排序后的序列,默认是递增序列,如果指定reverse为True,则返回递减序列;

>>> a = [1,4,3,2]

>>> sorted(a)

[1, 2, 3, 4]

>>> sorted(a,reverse=False)

[1, 2, 3, 4]

>>> sorted(a,reverse=True)

[4, 3, 2, 1]

reversed,返回反序的序列;

>>> a = [1,4,3,2]

>>> b = [ele for ele in reversed(a)]

>>> b

[2, 3, 4, 1]

2.4 类,对象,属性

hasattr,检查对象是否拥有某个属性;

getattr,返回某属性;

setattr,将对象中的属性设置为新的属性;

delattr,删除对象中的属性;

isinstance,判断对象是否为类生成的对象;

issubclass,判断类是否为某类的子类;

class A(object):

def __init__(self):

# 定义属性value

self.value = [2,3,0]

# 定义属性min,为built-in中的min函数

self.min = min

def getValue(self):

return self.value

def minValue(self):

return self.min(self.value)

# 定义对象Aobject

Aobject = A()

# 获取Aobject所有的属性

print dir(Aobject)

# ['__class__', '__delattr__', '__dict__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__module__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'getValue', 'min', 'minValue', 'value']

# 判断Aobject是否有value属性

print hasattr(Aobject,"value")

# True

# 获取Aobject的vallue属性

print getattr(Aobject,"value")

# [2, 3, 0]

# 将Aobject的min属性修改为max

setattr(Aobject,"min",max)

# 调用minValue,将会返回列表的最大值

print Aobject.minValue()

# 3

# 删除Aobject的value属性

delattr(Aobject,"value")

# 判断Aobject是否有value属性

print hasattr(Aobject,"value")

# False

# 判断Aobject是否为类A的实例

print isinstance(Aobject,A)

# True

# 判断A是否为object的子类

print issubclass(A,object)

# True

2.5 编译,执行

repr,返回对象的字符串表达式;

class A(object):

def __init__(self):

# 定义属性value

self.value = [2,3,0]

# 定义属性min,为built-in中的min函数

self.min = min

def getValue(self):

return self.value

def minValue(self):

return self.min(self.value)

# 定义对象Aobject

Aobject = A()

b = repr(Aobject)

print b

compile,编译字符串成为code对象;

testCode = compile("for i in range(10): print i,","",'exec')

exec testCode

print ""

testCode2 = compile("3 * 4 + 5",'','eval')

print eval(testCode2)

eval,解释字符串表达式,参数也可以是compile()返回的code对象;

>>> eval("1+3")

4

exec,解释并执行字符串,参数也可以是compile()返回的code对象;

>>> exec("print ('hello world')")

hello world

2.6 其它

input,等待输入;

raw_input,等待输入;

>>> input("please input:")

please input:"sting"

'sting'

>>> raw_input("please input:")

please input:string

u'string'

raw_input()直接读取控制台的输入(任何类型的的输入它都可以接收);

input(),希望能够读取一个合法的python表达式,即你输入字符串的时候,必须使用引号将它括起来,否则会引发一个SyntaxError。

input()本质上还是使用raw_input()函数来实现,只是调用完raw_input()之后,在调用eval()函数,所以,你甚至可以将表达式作为input()的参数,并且它会计算表达式的值并返回它。

除非对input()有特别需要,否则一般情况下我们都是推荐使用raw_input()来与用户交互。

例如,

>>> raw_input("please:")

please:1+2

'1+2'

>>> input("please:")

please:1+2

3

>>> raw_input("please:")

please:'a'

"'a'"

>>> input("please:")

please:'a'

'a'

>>> raw_input("please:")

please:

''

>>> input("please:")

please:

Traceback (most recent call last):

File "", line 1, in

File "", line 0

^

SyntaxError: unexpected EOF while parsing

globals,返回全局命名空间,比如全局变量名,全局函数名;

locals,返回局部命名空间;

3.Reference

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值