码迷,mamicode.com
首页 > 其他好文 > 详细

内置函数讲解

时间:2018-09-18 19:01:43      阅读:252      评论:0      收藏:0      [点我收藏+]

标签:形式   repr   生成   break   vlan   round   return   16进制   区域   

内置函数

print(all([0,2-8])) #可迭代对象全为真(非0)返回True,否则返回false

print(any([1])) #空为假,有一个真就位真

print(ascii([1,2,"呵呵"])) #输出格式为字符串(str)

print(bin(8)) #把数字转换成二进制

print(bool([1,0])) #判断真假,(空字典列表都为假)

#

a=bytearray("abcde",encoding="utf-8") #以列表格式进行修改(ask码)

print(a[1])

a[1]=200

print(a)

a=bytes("abcde",encoding="utf-8")

print(a.capitalize(),a) #字符串,二进制字节格式不能修改,修改也是生成新的

#

def sayhi():pass #判断能被调用的为真,否则为假

print(callable([]))

#

print(chr(97)) #把数字对应的ask码表反映出来。只能是数字

ord("b") #只能是字符

#

compile() #把代码进行编译

code=‘‘‘def fib(max):

n,a,b=0,0,1

while n<max:

print(b)

yield b

a,b=b,a+b

n=n+1

return "done"

#

f=(fib(4))

print(f.next())

g=fib(6)

while True:

try:

x=next(g)

print("g:",x)

except StopIteration as e:

print("vlan:",e.value)

break

‘‘‘

py_obj=compile(code,"err.log","exec")

exec(py_obj)

exec(code) #可直接运行,把代码一字符串形式进行赋值。

#

a=[]

dir(a) #查询使用方法

divmod(5,2) #返回商,和余数

code="1+3/3*2"

print(eval(code)) #加减乘除,简单的数据类型

#

匿名函数各种使用方法

def sh(n):

print(n)

#

sh(3)

#

(lambda n:print(n))(5) #直接传参变态方法

calc=lambda n:print(n)

calc=lambda n:3 if n<4 else n

print(calc(2))

#

rt=filter(lambda n:n>5,range(10)) #过滤,吧大于5的值取出来

for i in rt:

print(i)

#

rt=map(lambda n:n*n,range(10)) #吧循环的值交给前面处理再返回一个新的列表

等于[i*2 for i int range(10)]

rt=[lambda i:i*2 for i in range(10)]

for i in rt:

print(i)

import functools

rt=functools.reduce(lambda x,y:x+y,range(1,10)) #1-10依次相加或者相乘

print(rt)

a=frozenset([1,2,3,4,444,4,333,2,]) #不可变列表

print(globals()) #返回当前程序所有变量的变量名为key,值为value,只打印全局变量

def test():

local_var=333

print(locals())

test()

print(globals().get("local_var"))

hash("alex") #形成对于的映射关系,互相间有唯一性

print(hex(0xf)) #把数字转换成16进制

print(oct(18)) #进行8进制转换

print(pow(2,3)) #2的3次方

#

isinstance() #可以使用isinstance来判断是都是Iterator对象

#

print(repr("c")) # 把对象转换成能打印的字符串

#

print(round(1.345656,2)) #精确到小数点后两位(区域数据精确性)

#

d=range(20)

print(d[slice(2,5)])==range(2,5)

#

字典转换排序

a={6:2,8:0,1:4,-5:6,99:11,4:22}

print(sorted(a.items())) #按key排序

print(sorted(a.items(),key=lambda x:x[1])) #按value

print(a)

#

a=[1,2,3]

print(sum(a)) #列表求和

#

vars()#返回一个对象的所有属性名

#

一一对应,按最少的拼

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

b=[‘a‘,‘b‘,‘c‘]

for i in zip(a,b):

print(i)

#

import("生成器") #按字符串导入模块

内置函数讲解

标签:形式   repr   生成   break   vlan   round   return   16进制   区域   

原文地址:http://blog.51cto.com/12992048/2176760

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!