python的35个常见内置函数(BIF)

#bif = dir(__builtins__)
#print(len(bif))#152个内置函数

#35个常用内置函数

#1. abs():求绝对值(模)
a = -1
b = 3 + 4j
print(abs(a))
print(abs(b))

#2. bin():把整数转为二进制串表示形式
c = 16
print(bin(c))

#3. complex(real,[imag]):返回复数,real:实部,[imag]:虚部
print(complex(2))
print(complex(3,4))

#4. chr(kk):由Unicode编码找到字符。
print(chr(63))
print(chr(97))

#5. dir(obj):返回指定对象或模块obj的成员列表,如果不带参数则返回当前作用域内的所有标识符
import math
print(dir(math))

#6. divmod(x,y):返回包含整商和余数的元组
d = 10
e = 3
print(divmod(d, e))

#7. enumerate(iterable[,start]):返回包含元素形式的(索引,值)
names1 = ['xiaowang','xiaoming','xiaozhang'] #列表,list
for i_d,name in enumerate(names1):
print(i_d,name)
names2 = {'xiaowang','xiaoming','xiaozhang'} #集合,set
for i_d,name in enumerate(names2):
print(i_d,name)
names3 = ('xiaowang','xiaoming','xiaozhang') #元组,tuple
for i_d,name in enumerate(names3):
print(i_d,name)
infos = {'name':'xiaowang','sex':'man','height':'175cm'} #字典,dict
for i_d,info in enumerate(infos):
print(i_d,info)
print(i_d,infos[info])

#8. eval(s[,globals[,locals]]):计算并返回字符串s中表达式的值(注:在读文本时有很大的作用)
f = 1
g = 'f+1'
print(eval(g))

#9. filter(func):返回filter对象,其中包含序列seq中使得但参数函数func返回值为True的那些元素
def is_odd(n):
return n % 2 == 1
tmplist = list(filter(is_odd, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]))
print(tmplist)

#10. float(x)
h = 1
i = '1'
print(float(h))
print(float(i))

#11. help(obj):返回对象obj的帮助信息
import math
#print(help(math))

#12. hex(x):把整数x转换成十六进制串
j = 32
print(hex(j))

#13. id(obj):返回对象obj的标识(内存地址)
k = 1
print(id(k))

#14. input([提示信息]):显示提示信息,接受键盘输入的内容,以字符串形式返回
print(input('请输入:'))

#15. int(x[,d]):返回实数、分数或高精度实数的整数部分
l = 10.23
print(int(l))

#16. isinstance(obj,class-or-type-or-tuple):测试obj是否属于指定类型的实例
m = 2
print(isinstance(m,int))
print(isinstance(m,str))
print(isinstance(m,(int,str,list)))

#17. len(obj):返回对象obj包含的元素个数
n = (1,2,3)
print(len(n))

#18. list([x])、set([x])、tuple([x]),dict([x]):把对象x转换成列表、集合、元组或字典并返回
print(list([1,2,3]))
print(set([1,2,3]))
print(tuple([1,2,3]))
print(dict(zip(['one','two','three'],[1,2,3])))

#19. map(func,*iterables):返回包含若干函数值的map对象,函数func的参数分别来自于iterables指定的每个迭代对象
def fic(x):
return x*x
print(set(map(fic,[1,2,3,4,5])))

#20. max(...),min(...)

#21. iter(obj, sentinel):用来生成迭代器
o = {1:'one',2:'two',3:'three'}
for i in iter(o.items()):
print(i)

#21. next(iterator[,default]):返回可迭代对象x的下一个元素
p = 'abcdefg'
iterlist = iter(p) #注意:一定要定义一个变量来存储这个迭代器
for i in range(len(p)):
print(next(iterlist))

#22. oct(x):把整数x转化为八进制数
print(oct(16))

#23. open():打开文件,返回文件对象,file=open('xxx.txt')
#r: 只读,指针在文件开头 r+: 读写,指针在文件开头
#w: 只写,如果文件已存在,原文件将会被覆盖 w+:读写,如果文件已存在,原文件将会被覆盖
#a: 追加,如果文件已存在,指针在文件结尾,原文件将不会被覆盖 a+: 读写,如果文件已存在,指针在文件结尾,原文件将不会被覆盖
#file的方法,read,readline,readlines,write,writeline,tell,close
#for line in f: print line :通过迭代器访问。

#24. ord(x):返回字符x的Unicode的编码
print(ord('!'))

#25. pow(x,y,z=None):返回x的y次方
print(pow(2,6))

#26. print():基本输出函数

#27. range([start,] end [,step]):返回range对象,其中包含左闭右开区间[start,end)内以step为步长的整数。
for i in range(1,100,2):
print(i)

#28. reduce(func,sequence[,initial]):将双参数函数func以迭代的方式从左往右依次应用至序列seq中的每个元素,并把中间计算结果作为下一次计算的第一个操作数,最终返回单个值作为结果。
from functools import reduce
def add(x,y):
return x+y
print(reduce(add,[1,2,3,4,5]))

#29. reversed(seq):返回(列表、元组、字符串、range对象)中所有元素逆序后的迭代对象
strin = 'Ineedyou'
num = range(1,10)
print(list(reversed(strin)))
print(list(reversed(num)))

#30. round(x):对x进行四舍五入,若不指定小数位数,则返回整数
print(round(0.58964,4))

#31. sorted(iterable,key=None,reverse=False):返回排序后的列表,其中iterable表示要排序的序列或迭代对象,key用来制定排序规则或依据,reverse用来指定升序或降序。该函数不改变iterable内任何元素的顺序。
numlist = (5,2,3,1,4)
print(sorted(numlist,reverse=True))
print(sorted(numlist,reverse=False))

#32. str(obj):把对象obj直接转换为字符串

#33. sum(x,start=0):返回序列x中所有元素之和,要求序列x中所有元素类型相同且支持加法运算,允许指定起始值start(默认为0),返回start+sum(x)
print(sum((2,3,4,5,3,2),3))

#34. type(obj):返回对象obj的类型

#35. zip(seq1 [,seq [...]]):返回zip对象,其中元素为(seq1[i],seq2[i],...)形式的元组,最终结果中包含的元素个数取决于所有参数序列或可迭代对象中最短的那个
q = [1,2,3]
r = [1,2,3,4]
s = [1,2,3,4,5]
t = [1,2,3,4,5,6]
u = zip(q,r,s,t)
print(list(u))
for i in u:
print(i)
for j in zip(*zip(q,r,s,t)):#注意,这里不能用变量
print(j)

猜你喜欢

转载自www.cnblogs.com/xhw19950606/p/11922502.html