python 内置函数
官方说明文档:https://docs.python.org/3/library/functions.html
abs(求绝对值)
print(abs(-5)) #输出:5
all(判断可迭代对象的每个元素是否都为True,只要有一个元素为0、None、空字符 ' '、空列表、空元组、空字典,都返回False)
可迭代对象:就是可循环遍历的对象
print(all([])) #空列表,返回True print(all(['',])) #列表元素有1个为空,返回False print(all((0,1,2))) #元组元素有一个为0,返回False #输出:True # False # False
any(判断可迭代对象的每个元素是否都为True,和all函数相反)
print(any([0,'',None,{},1])) #只要有一个元素为真,返回真 print(any([0,'',None,{}])) #所有元素为假,才为假 #输出:True # False
ascii(返回一个用ASCII表示的对象,非ascii字符,会输出\x,\u或\U等字符来表示)
补充:到对象的类中执行__repr__方法,获取其返回值
print(ascii('hello')) print(ascii('中文')) #输出:'hello' # '\u4e2d\u6587'
bin(返回二进制数)
print(bin(57)) #输出:0b111001
bool(返回布尔值)
print(bool(5)) #输出:True
bytearray(转换成字节数组)
print(bytearray(3)) print(bytearray('hello',encoding='utf-8')) #参数为字符串要指定编码 print(bytearray('中文','utf-8')) print(bytearray([11,22,33])) #参数为可迭代类型,则元素必须为[0 ,255]中的整数; #输出:bytearray(b'\x00\x00\x00') # bytearray(b'hello') # bytearray(b'\xe4\xb8\xad\xe6\x96\x87') # bytearray(b'\x0b\x16!')
bytes(转换成字节)
print(bytes(2)) print(bytes('中文',encoding='utf-8')) #字符转换成字节,utf-8编码1个字符为3个字节,GBK编码1个字符为2个字节 #输出:b'\x00\x00' # b'\xe4\xb8\xad\xe6\x96\x87'
callable(检测对象是否可被执行)
def test(): print('succeed') n = 5 print(callable(test)) print(callable(n)) #输出:True # False
chr(将数字转换成ASCII码中的字符)
print(chr(65)) #输出:A
ord(将ASCII码中的字符转换成数值)
print(ord('A')) #输出:65
classmethod
#占位
compile (编译)
#占位
complex(返回复数)
#占位
delattr
#占位
dict(创建字典)
d = dict(a=1,b=2) print(d) #输出:{'b': 2, 'a': 1}
dir(查看某个对象或模块提供了哪些功能)
print(dir(str)) #输出:['__add__', '__class__', '__contains__',......'translate', 'upper', 'zfill']
divmod(传入除数和被除数,返回商和余数)
print(divmod(13,5)) #输出:(2, 3)
enumerate(传入可迭代对象,获得它的索引和值)
name = ['Tom','Lucy','Ben'] for i,j in enumerate(name): #i为索引,j为值 print(i,j) #输出:0 Tom # 1 Lucy # 2 Ben
eval(执行字符串里面的表达式,并返回结果)
print(eval('5*10')) #输出:50
exec(执行字符串里面的代码)
exec('a=2+3') print(a) #输出:5
map(遍历可迭代对象的元素,把每个元素传入指定方法或函数中执行,并生成的可迭代对象)
def func(a): return a*2 li = [11,22,33,44] new_li = map(func,li) print(list(new_li)) #new_li是map对象,要转成list才能输出结果 #输出:[22, 44, 66, 88]
filter(使用指定方法或函数,过滤可迭代对象的元素,并生成新的可迭代对象)
def func(a): if a>50: return True else: return False li = [33,44,55,66,77] new_li = filter(func,li) print(list(new_li)) #new_li是filter对象,要转成list才能输出结果 #输出:[55, 66, 77]
float(把数字转换为浮点型)
print(float(22)) #输出:22.0
format(格式化输出)
print(format(9,'b')) #转换成二进制,输出1001 print(format(9,'o')) #转换成八进制,输出11 print(format(9,'d')) #转换成十进制,输出9 print(format(12,'x')) #转换成十六进制,小写显示,输出c print(format(12,'X')) #转换成十六进制,大写显示,输出C print(format(65,'c')) #转换成ASCII,输出A
getattr
#占位
globals(返回当前所有全局变量)
a = 3 print(globals()) #输出:{'a': 3, '__package__': None, '__builtins__'......'__name__': '__main__'}
hasattr
#占位
hash(获取对象的哈希值)
print(hash('xxoo')) #输出:1068037005
help(获取对象的帮助信息)
print(help(dict))
hex(输出整数的16进制)
print(hex(123)) #输出:0x7b
id(查看变量的内存地址)
a = 3 print(id(a)) #输出:490363184
input(获取用户输入值)
name = input('please input your name:') print(name) #运行,please input your name:Tom #输出:Tom
int(创建一个整型的数值)
a = int(1314)
isinstance(判断对象是否为某个类型,返回布尔值)
print(isinstance(123,int)) #输出True print(isinstance(['a','b'],list)) #输出True print(isinstance(('a','b'),tuple)) #输出True print(isinstance('abc',(int,str,list))) #输出True print(isinstance('ab',int)) #输出False
issubclass
#占位
iter(传入一个可迭代对象,获取一个生成器)
l1 = iter([1,2,3,4,5]) print(l1) #<list_iterator object at 0x0000000001DAA2E8>
len(获取对象的长度)
a = [1,2,3,4] print(len(a)) #输出:4
list(创建一个列表)
li = list([1,2,3,4])
locals(返回当前所有局部变量)
print(locals())
max(获取最大值)
print(max(2,4,6,8)) #输出:8
min(获取最小值)
print(min(2,4,6,8)) #输出:2
next
#占位
object
#占位
oct(返回八进制)
print(oct(12)) #输出:0o14
open(打开文件)
#占位
pow(求指数)
ret = pow(2,3) #求2的3次方 print(ret) #输出:8
print(打印输出)
print(123)
property
#占位
range(创建一个连续的整数序列)
for i in range(1,10): print(i) #打印1到9的数字
repr
#占位
reversed(反转)
n = [1,2,3,4,5] m = reversed(n) print(list(m)) #m是reversed对象,要转成list输出 #输出:[5, 4, 3, 2, 1]
round(求四舍五入后的值)
print(round(4.3)) print(round(4.8)) #输出:4 # 5
set(创建set集合,无序且元素不重复的集合)
n = set([1,2,2,3,3]) print(n) #输出:{1, 2, 3}
setattr
#占位
slice
#占位
sorted(排序)
s = [5,2,7,9,3] print(sorted(s)) #输出:[2, 3, 5, 7, 9]
staticmethod
#占位
str(创建字符串)
s = str('123abc')
sum(求和)
print(sum([1,2,3])) #输出:6
super
#占位
tuple(创建一个元组)
t = tuple([1,2,3])
type(查看对象的类型)
n = 123 print(type(n)) #输出:<class 'int'>
vars(查看某个对象或模块提供了哪些功能,返回字典,dir是返回列表)
print(vars(str))
zip(把传入所有的迭代对象,相同位置的元素,组合起来,形成新的迭代对象)
x = [1,2,3] y = [6,7,8,9] z = zip(x,y) print(list(z)) #取到最短的序列 #输出:[(1, 6), (2, 7), (3, 8)]