> 文档中心 > Python的内置函数你知道多少?超详解指南

Python的内置函数你知道多少?超详解指南


🐚作者简介:苏凉(专注于网络爬虫,数据分析)
🐳博客主页:苏凉.py的博客
🌐系列专栏:Python基础语法专栏
👑名言警句:海阔凭鱼跃,天高任鸟飞。
📰要是觉得博主文章写的不错的话,还望大家三连支持一下呀!!!
👉关注✨点赞👍收藏📂

查阅指南

  • A
    • abs()
    • all()
    • any()
  • B
    • basestring()
    • bin()
    • bool()
    • bytearray()
  • C
    • callable()
    • chr()
    • classmethod()
    • cmp()
    • compile()
    • complex()
  • D
    • delattr()
    • dict()
    • dir()
    • divmod()
  • E
    • enumerate()
    • eval()
    • execfile()
  • F
    • file()
    • filter()
    • float()
    • format()
    • frozenset()
  • G
    • getattr()
    • globals()
  • H
    • hasattr()
    • hash()
    • help()
    • hex()
  • I
    • id()
    • input()
    • int()
    • isinstance()
    • issubclass()
    • iter()
  • L
    • len()
    • list()
    • locals()
    • long()
  • M
    • map()
    • max()
    • memoryview()
    • min()
  • N
    • next()
  • O
    • oct()
    • open()
    • ord()
  • P
    • pow()
    • print()
  • R
    • range()
    • repr()
    • reverse()
    • round()
  • S
    • set()
    • slice()
    • sorted()
    • str()
    • sum()
    • super()
  • T
    • tuple()
    • type()
  • V
    • vars()
  • Z
    • zip()
  • 结语

A

abs()

abs() 函数返回数字的绝对值。

语法:abs( x )
x – 数值表达式。

i= -12print(abs(i)) #12print(abs(-10.5)) #10.5

all()

all() 函数用于判断给定的可迭代参数 iterable 中的所有元素是否都为 TRUE,如果是返回 True,否则返回 False。元素除了是 0、空、None、False 外都算 True。

语法:all(iterable)
iterable – 元组或列表。

x = all((0,1,2,4))  y = all([True,False,True])  z = all(()) k = all([]) print(x, y,z,k) #结果False False True True

any()

any() 函数用于判断给定的可迭代参数 iterable 是否全部为 False,则返回 False,如果有一个为 True,则返回 True。元素除了是 0、空、FALSE 外都算 TRUE。

语法:any(iterable)
iterable – 元组或列表。

x = any((0,1,2,3)) #123都为Truey = any((True,False,False)) #含有一个Truez = any((0,False ,'',))# 0和False以及空值都是Falseprint(x,y,z) #结果:True True False

B

basestring()

注意:Python3 不支持 basestring() 函数,改用 str() 函数。

bin()

bin() 返回一个整数 int 或者长整数 long int 的二进制表示。

语法:bin(x)
x – int 或者 long int 数字

a = 10 #a的值为整形或长整型print(bin(a)) #结果:0b1010

bool()

bool() 函数用于将给定参数转换为布尔类型,如果没有参数,返回 False。

语法:bool([x])
x – 要进行转换的参数。

x = bool(0)y = bool(1)z = bool('')print(x,y,z)  #结果:False True False

bytearray()

bytearray() 方法返回一个新字节数组。这个数组里的元素是可变的,并且每个元素的值范围: 0 <= x < 256。

语法:class bytearray([source[, encoding[, errors]]])
如果 source 为整数,则返回一个长度为 source 的初始化数组;
如果 source 为字符串,则按照指定的 encoding 将字符串转换为字节序列;
如果 source 为可迭代类型,则元素必须为[0 ,255] 中的整数;
如果 source 为与 buffer 接口一致的对象,则此对象也可以被用于初始化 bytearray。
如果没有输入任何参数,默认就是初始化数组为0个元素。

print(bytearray()) # bytearray(b'')print(bytearray(1))# bytearray(b'\x00')print(bytearray('suliang',encoding='utf-8'))# bytearray(b'suliang')

C

callable()

callable() 函数用于检查一个对象是否是可调用的。如果返回 True,object 仍然可能调用失败;但如果返回 False,调用对象 object 绝对不会成功。

语法:callable(object)
object – 对象

print(callable(0)) #Falsex = callable(print)print(x) #Truedef name(x):    return x+1y = name(5)print(y) #6print(callable(name)) #True

chr()

chr() 用一个范围在 range(256)内的(就是0~255)整数作参数,可以是10进制也可以是16进制的形式的数字。返回值是当前整数对应的 ASCII 字符

语法: chr(i)
i – 可以是10进制也可以是16进制的形式的数字。

print(chr(97),chr(65),chr(0x30))#结果:a A 0

classmethod()

classmethod 修饰符对应的函数不需要实例化,不需要 self 参数,但第一个参数需要是表示自身类的 cls 参数,可以来调用类的属性,类的方法,实例化对象等。

class A(object):    bar = 1 def func1(self): print('foo')     @classmethod    def func2(cls): print('func2') print(cls.bar) cls().func1()  # 调用 foo 方法A.func2()  #结果func2,1,foo

cmp()

cmp(x,y) 函数用于比较2个对象,如果 x y 返回 1。
Python 3 的版本中已经没有 cmp 函数,如果你需要实现比较功能,需要引入 operator 模块,适合任何对象

import operatorx = int(input("输入第一个数:"))y = int(input("输入第二个数:"))z = operator.ge(x,y)print(z)

结果:
Python的内置函数你知道多少?超详解指南

compile()

compile() 函数将一个字符串编译为字节代码。

语法:compile(source, filename, mode[, flags[, dont_inherit]])
source – 字符串或者AST(Abstract Syntax Trees)对象。。
filename – 代码文件名称,如果不是从文件读取代码则传递一些可辨认的值。
mode – 指定编译代码的种类。可以指定为 exec, eval, single。
flags – 变量作用域,局部命名空间,如果被提供,可以是任何映射对象。。
flags和dont_inherit是用来控制编译源码时的标志

a  =  'sliang'b = compile(a ,'0','exec')print(b)# 结果:<code object  at 0x000001E206B1D0E0, file "0", line 1>

complex()

complex() 函数用于创建一个值为 real + imag * j 的复数或者转化一个字符串或数为复数。如果第一个参数为字符串,则不需要指定第二个参数。

语法:class complex([real[, imag]])
real – int, long, float或字符串;
imag – int, long, float;

a = complex(5,6)b = complex('15')c = complex(15)d = complex('15+2j')print(a,b,c,d)  #结果:(5+6j) (15+0j) (15+0j) (15+2j)

D

delattr()

delattr 函数用于删除属性。

语法:delattr(object, name)
object – 对象。
name – 必须是对象的属性。

class list:    a = 10    b = 20    c = 30obj = list()print(obj.b) #结果:20# 删除属性bdelattr(list,b)print(obj.b) #结果:NameError: name 'b' is not defined

dict()

dict() 函数用于创建一个字典。

语法:dict(iterable)
iterable – 可迭代对象。

dic = dict(name='苏凉',age = 21,num = '787991021')print(dic) # 结果:{'name': '苏凉', 'age': 21, 'num': '787991021'}

dir()

dir() 函数不带参数时,返回当前范围内的变量、方法和定义的类型列表。
带参数时,返回参数的属性、方法列表。

语法:dir([object])
object – 对象、变量、类型。

dic = dict(name='苏凉',age = 21,num = '787991021')print(dic)# 结果:{'name': '苏凉', 'age': 21, 'num': '787991021'}a = dir(dic)b =dir()print(a)print(b)

结果:
Python的内置函数你知道多少?超详解指南

divmod()

python divmod() 函数把除数和余数运算结果结合起来,返回一个包含商和余数的元组(a // b, a % b)。

语法:divmod(a, b)
a: 数字
b: 数字

print(divmod(11,3)) #除数为3,余数为2,返回(3,2)#结果:(2,0)

E

enumerate()

enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for循环当中。

语法:enumerate(sequence, [start=0])
sequence – 一个序列、迭代器或其他支持迭代对象。
start – 下标起始位置的值。

a = ('name','age','sex')b = list(enumerate(a,start=1))print(b)for i,j in enumerate(a,start=1):   print(i,j)

结果:
在这里插入图片描述

eval()

eval() 函数用来执行一个字符串表达式,并返回表达式的值。

语法:eval(expression)
expression – 表达式。

x = eval('4*4')print(x)  #结果:16

execfile()

execfile() 函数可以用来执行一个文件。
python3 删去了 execfile(),用with open的方法来取代。

with open('./1.函数.py','r',encoding='utf-8') as fp:    exec(fp.read())

F

file()

file() 函数用于创建一个 file 对象,它有一个别名叫 open(),更形象一些,它们是内置函数。参数是以字符串的形式传递的。在python3中file函数已经被删除了。

f = open('test.txt','r',encoding='utf-8')print(f.read())

filter()

filter() 函数用于过滤序列,过滤掉不符合条件的元素,返回由符合条件元素组成的新列表。

语法:filter(function, iterable)
function – 判断函数。
iterable – 可迭代对象。

def fuc(x):    return x%2 == 0a = [1,2,3,4,5,6,7,8,9]b = filter(fuc,a)print(list(b))# 结果:[2, 4, 6, 8]

float()

float() 函数用于将整数和字符串转换成浮点数。

语法:float(x)
x – 整数或字符串

print(float(5)) #结果:5.0print(float('15'))#结果:15.0

format()

format函数增强了字符串格式化的功能。

语法:是通过 {} 和 : 来代替以前的 % 。

print('name:{},age:{}'.format('苏凉','21')) #结果:name:苏凉, age:21

frozenset()

frozenset() 返回一个冻结的集合,冻结后集合不能再添加或删除任何元素。

语法:frozenset(iterable)
iterable – 可迭代的对象,比如列表、字典、元组等等。

list = [0,1,2,3]print(list)# 结果:[0, 1, 2, 3]ice_list = frozenset(list)print(ice_list)# 结果:frozenset({0, 1, 2, 3})

G

getattr()

getattr() 函数用于返回一个对象属性值。

语法:getattr(object, name[, default])
object – 对象。
name – 字符串,对象属性。
default – 默认返回值,如果不提供该参数,在没有对应属性时,将触发 AttributeError。

class list(object):    name = '苏凉'a = list()print(getattr(a,'name'))#结果:苏凉

globals()

globals() 函数会以字典类型返回当前位置的全部全局变量。

语法:globals()

name = '苏凉'age = 21QQ_num = '787991021'def list():    a = 5    b = 10a = globals()print(a)

结果:
Python的内置函数你知道多少?超详解指南

H

hasattr()

hasattr() 函数用于判断对象是否包含对应的属性。

语法:hasattr(object, name)
object – 对象。
name – 字符串,属性名。

class list(object):    name = 'suliang'    age = 21    QQ_num = '787991021'a = list()print(hasattr(a,'name')) #结果:Trueprint(hasattr(a,'wechat')) #结果:False

hash()

hash() 用于获取取一个对象(字符串或者数值等)的哈希值。

语法:hash(object)
object – 对象;

list1 = [1,2,3]dict1 = {'a':1,'b':2,'c':3}print(hash('test'))print(hash(10))print(hash(str(list1)))print(hash(str(dict1)))

结果:
Python的内置函数你知道多少?超详解指南

help()

help() 函数用于查看函数或模块用途的详细说明。

语法:help([object])
object – 对象;

help(print)a = [1,2,3]# help(a)help(a.append)

在这里插入图片描述

hex()

hex() 函数用于将10进制整数转换成16进制,以字符串形式表示。

语法:hex(x)
x – 10进制整数

a = [15,16,170]for i in a :    b = hex(i)    print(b)

Python的内置函数你知道多少?超详解指南

I

id()

id() 函数返回对象的唯一标识符,标识符是一个整数。
Python 中 id() 函数用于获取对象的内存地址。

语法:id([object])
object – 对象。

a = 5print(id(a))name = 'suliang'print(id(name))

结果:
Python的内置函数你知道多少?超详解指南

input()

input() 函数接受一个标准输入数据,返回为 str 类型。

语法:input([prompt])
prompt: 提示信息

a = input('请输入:')print(type(a))

结果:
Python的内置函数你知道多少?超详解指南

int()

int() 函数用于将一个字符串或数字转换为整型。

语法:int(x)
x – 字符串或数字。

x = '787991021'print(type(x)) #结果:a = int(x)print(type(a)) #结果:b = int(10.52)print(b,type(b)) #结果:10 

isinstance()

isinstance() 函数来判断一个对象是否是一个已知的类型,类似 type()。

语法:isinstance(object, classinfo)
object – 实例对象。
classinfo – 可以是直接或间接类名、基本类型或者由它们组成的元组。

a = 5print(isinstance(a,int)) #结果:Trueprint(isinstance(a,str)) #结果:Falseprint(isinstance(a,(int,float,str))) #结果:True

issubclass()

issubclass() 方法用于判断参数 class 是否是类型参数 classinfo 的子类。

语法:issubclass(class, classinfo)
class – 类。
classinfo – 类。

class list1():    num1 = 1class list2():    num2 =2class list3(list1):    passprint(issubclass(list1,list2)) #结果:Falseprint(issubclass(list3,list1)) #结果:True

iter()

iter() 函数用来生成迭代器。

语法:iter(object)
object – 支持迭代的集合对象。

x = [1,2,3,4]for i in iter(x):    print(i)

结果:
Python的内置函数你知道多少?超详解指南

L

len()

返回对象(字符、列表、元组等)长度或项目个数。

语法:len( s )
s – 对象。

name ='suliang'print(len(name)) #结果:7list = [0,1,2,3,4,5]print(len(list)) #结果:6tup = (12,3,4,5,6)print(len(tup)) #结果:5

list()

list() 方法用于将元组转换为列表。

语法:list( tup )
tup – 要转换为列表的元组。

tup = (0,1,2,3,4)print(list(tup)) #结果:[0, 1, 2, 3, 4]

locals()

locals() 函数会以字典类型返回当前位置的全部局部变量。
语法:locals()

x = 5def list():    global x    x = 6    name = 'suliang'    age = 21    qq_num = '787991021'    print(locals())list()

long()

Python3以后的版本已删除 long() 函数。(将数字或字符串转换为一个长整型。)

M

map()

map() 会根据提供的函数对指定序列做映射。返回迭代器。

语法:map(function, iterable)
function – 函数
iterable – 一个或多个序列

def fc(x):    return x*5i = map(fc,[1,2,3,4,5])print(list(i))#结果:[5, 10, 15, 20, 25]

max()

max() 方法返回给定参数的最大值,参数可以为序列。

语法:max(x,y,z…)
x ,y,z-- 数值表达式。

list = [28,32,65,48,45,21,41]print(max(list)) #结果:65

memoryview()

memoryview() 函数返回给定参数的内存查看对象(memory view)。

语法:memoryview(obj)
obj – 对象

x =memoryview(bytearray('abcdefg',encoding='utf-8'))print(x[2]) #结果:99 返回c对应的ascii码值。

min()

min() 方法返回给定参数的最小值,参数可以为序列。

语法:min( x, y, z, … )
x,y,z-- 数值表达式。

list = [28,32,65,48,45,21,41]print(min(list)) #结果:21

N

next()

next() 返回迭代器的下一个项目。next() 函数要和生成迭代器的 iter() 函数一起使用。

语法:next(iterable)
iterable – 可迭代对象

y =[1,2,3,4,5]x = iter(y)count = 0while True:    count = count+1    if count<=5: y =next(x) print(y)    else: break

O

oct()

oct() 函数将一个整数转换成 8 进制字符串。

语法:oct(x)
x – 整数。

print(oct(10))print(oct(5))print(oct(100))# 结果:0o12  0o5  0o144

open()

python open() 函数用于打开一个文件,创建一个 file 对象,相关的方法才可以调用它进行读写。

语法:open(name, mode)
name : 一个包含了你要访问的文件名称的字符串值。
mode : mode 决定了打开文件的模式:只读,写入,追加等。

f = open('test.txt','r',encoding='utf-8')print(f.read())

ord()

ord() 函数它以一个字符(长度为1的字符串)作为参数,返回对应的 ASCII 数值。

语法:ord( c )
c – 字符。

print(ord('A')) #结果:65print(ord('a')) #结果:97

P

pow()

pow() 方法返回 xy(x 的 y 次方) 的值。

语法:pow( x, y ,z)
函数是计算 x 的 y 次方,如果 z 在存在,则再对结果进行取模,其结果等效于 pow(x,y) %z。

print(pow(2,3)) #结果:8print(pow(2,3,5))  #结果:3

print()

print() 方法用于打印输出,最常见的一个函数。

语法:*print(objects, sep=’ ‘, end=’\n’, file=sys.stdout, flush=False)
objects – 复数,表示可以一次输出多个对象。输出多个对象时,需要用 , 分隔。
sep – 用来间隔多个对象,默认值是一个空格。
end – 用来设定以什么结尾。默认值是换行符 \n,我们可以换成其他字符串。
file – 要写入的文件对象。
flush – 输出是否被缓存通常决定于 file,但如果 flush 关键字参数为 True,流会被强制刷新。

print('www','baidu','com',sep='.',end=' ',)print('百度一下')#结果:www.baidu.com 百度一下

R

range()

range() 返回的是一个可迭代对象(类型是对象)

语法:range(start, stop, step)
start: 计数从 start 开始。默认是从 0 开始。
stop: 计数到 stop 结束,但不包括 stop。
step:步长,默认为1。

print(list(range(1, 11)))print(list(range(1,11,2))) #取步长为2name = '苏凉'for i in range(len(name)):    print(name[i])

结果:
Python的内置函数你知道多少?超详解指南

repr()

repr() 函数将对象转化为供解释器读取的形式。

语法:repr(object)
object – 对象。

list = 'name \t苏凉 \n age \t21 'print(list)print(repr(list))

结果:
Python的内置函数你知道多少?超详解指南

reverse()

reverse() 函数用于反向列表中元素。

语法:list.reverse()

list = [1,2,3,4,5,6]list.reverse()print(list)#结果:[6, 5, 4, 3, 2, 1]

round()

round() 方法返回浮点数x的四舍五入值。

语法:round( x ,n )
x – 数值表达式。
n – 数值表达式,表示从小数点位数,保留n位数。

print(round(100.531,2)) #结果:100.53print(round(100.1149,3)) #结果:100.115print(round(3.1415926*25,2)) #结果:78.54

S

set()

set() 函数创建一个无序不重复元素集,可进行关系测试,删除重复数据,还可以计算交集、差集、并集等。

语法:set([iterable])
iterable – 可迭代对象对象;

x = set('youtoo')y = set('you')print(x,y)print(x&y) #交集print(x|y) #并集print(x-y) #差集

结果:
Python的内置函数你知道多少?超详解指南

slice()

slice() 函数实现切片对象,主要用在切片操作函数里的参数传递。

语法:slice(start, stop,[ step])
start – 起始位置
stop – 结束位置
step – 间距

set_slice = slice(6) #设置切片为6x = list(range(1,11))print(x[set_slice]) #截取前6个数# 结果:[1, 2, 3, 4, 5, 6]

sorted()

sorted() 函数对所有可迭代的对象进行排序操作.

语法:sorted(iterable)
iterable – 可迭代对象。

list = [5,2,4,6,7,2,8,9]print(sorted(list))#结果:[2, 2, 4, 5, 6, 7, 8, 9]name = 'suliang'print(sorted(name))#结果:['a', 'g', 'i', 'l', 'n', 's', 'u']

str()

str() 函数将对象转化为适于人阅读的形式。

语法:str(object)
object – 对象。

name = 'suliang'print(str(name))list = 'name \t苏凉 \n age \t21 'print(str(list))

结果:
Python的内置函数你知道多少?超详解指南

sum()

sum() 方法对序列进行求和计算。

语法:sum(iterable), start)
iterable – 可迭代对象,如:列表、元组、集合。
start – 指定相加的参数,如果没有设置这个值,默认为0。

print(sum((1, 2, 3), 4)) #结果:10print(sum((1,2),5)) #结果:8

super()

super() 函数是用于调用父类(超类)的一个方法。

语法:super().xxx

class A:    def add(self, x): y = x + 1 print(y)class B(A):    def add(self, x): super().add(x)b = B()b.add(2)  # 结果:3

T

tuple()

tuple() 函数将列表转换为元组。

语法:tuple( iterable )
iterable – 要转换为元组的可迭代序列。

list = [1,2,3,4,5]print(tuple(list)) #结果:(1, 2, 3, 4, 5)dic = {'name':'suliang','age':21}print(tuple(dic.values())) #结果:('suliang', 21)

type()

type() 函数如果你只有第一个参数则返回对象的类型,三个参数返回新的类型对象。

语法:type(object)
object – 对象

a = 5b = [1,2,3]c = 'suliang'print(type(a),type(b),type(c))# 结果:  print(type(a)==int)#结果:True

V

vars()

vars() 函数返回对象object的属性和属性值的字典对象。

语法:vars([object])
object – 对象

class list:    a = 5print(vars(list))#结果:{'__module__': '__main__', 'a': 5, '__dict__': , '__weakref__': , '__doc__': None}

Z

zip()

zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象,这样做的好处是节约了不少的内存。

语法:zip([iterable, …])
iterabl – 一个或多个迭代器;

x = (1,2,3)y = (4,5,6)z = (7,8,9)print(list(zip(x)))#结果:[(1,), (2,), (3,)]n = zip(x,y,z)print(list(n))#结果:[(1, 4, 7), (2, 5, 8), (3, 6, 9)]# 解压缩o,p = zip(*zip(x,y))print(list(o),list(p))# 结果:[1, 2, 3] [4, 5, 6]

结语

这里包含了python所有的内置函数的用法供大家参考以及学习,有不足或是补充的可以在评论区讨论说着私信我一起讨论啊!关注我,咱们下期再见!!

在这里插入图片描述

全民K歌电脑版