编程语言中预先定义的函数,例如在JS语言中、VB语言中、Java语言中、Python语言中、SQL语言中,都有内置函数。具体:嵌入到主调函数中的函数称为内置函数,又称内嵌函数。 所以,针对Python来说,Python解释器自带的函数叫做内置函数,这些函数可以直接使用,不需要导入某个模块。
python内置函数有:abs、divmod、max、min、pow、round、sum、bool、int、float、complex、str、bytearray、bytes、memoryview、ord、oct、tuple、map等等。
本阶段博文分为上中下三篇,请参考:
【Python】内置函数(下)(本篇)
内置函数分类
- 数学运算(7个)
- 类型转换(24个)
- 序列操作(8个)
- 对象操作(7个)
- 反射操作(8个)
- 变量操作(2个)
- 交互操作(2个)
- 文件操作(1个)
- 编译执行(4个)
- 装饰器(3个)
7 交互操作
print:向标准输出对象打印输出
>>>print(1,2,3) 123>>>print(1,2,3,sep='+') 1+2+3>>>print(1,2,3,sep='+',end='=?') 1+2+3=?
input:读取用户输入值
>>>s=input('please input your name:') pleaseinputyourname:Ain>>>s'Ain'
8 文件操作
open:使用指定的模式和编码打开文件,返回文件读写对象
# t为文本读写,b为二进制读写>>>a=open('test.txt','rt') >>>a.read() 'some text'>>>a.close()
9 编译执行
compile:将字符串编译为代码或者AST对象,使之能够通过exec语句来执行或者eval进行求值
>>>#流程语句使用exec>>>code1='for i in range(0,10): print (i)'>>>compile1=compile(code1,'','exec') >>>exec (compile1) 0123456789>>>#简单求值表达式用eval>>>code2='1 + 2 + 3 + 4'>>>compile2=compile(code2,'','eval') >>>eval(compile2) 10
eval:执行动态表达式求值
>>>eval('1+2+3+4') 10
exec:执行动态语句块
>>>exec('a=1+2') #执行语句>>>a3
repr:返回一个对象的字符串表现形式(给解释器)
>>>a='some text'>>>str(a) 'some text'>>>repr(a) "'some text'"
10 装饰器
property:标示属性的装饰器
>>>classC: def__init__(self): self._name=''defname(self): """i'm the 'name' property."""returnself._namesetter .defname(self,value): ifvalueisNone: raiseRuntimeError('name can not be None') else: self._name=value>>>c=C() >>>c.name# 访问属性''>>>c.name=None# 设置属性时进行验证Traceback (mostrecentcalllast): File"<pyshell#84>", line1, in<module>c.name=NoneFile"<pyshell#81>", line11, innameraiseRuntimeError('name can not be None') RuntimeError: namecannotbeNone>>>c.name='Kim'# 设置属性>>>c.name# 访问属性'Kim'>>>delc.name# 删除属性,不提供deleter则不能删除Traceback (mostrecentcalllast): File"<pyshell#87>", line1, in<module>delc.nameAttributeError: can't delete attribute>>>c.name'Kim'
classmethod:标示方法为类方法的装饰器
>>>classC: deff(cls,arg1): print(cls) print(arg1) >>>C.f('类对象调用类方法') <class'__main__.C'>类对象调用类方法>>>c=C() >>>c.f('类实例对象调用类方法') <class'__main__.C'>类实例对象调用类方法
staticmethod:标示方法为静态方法的装饰器
# 使用装饰器定义静态方法>>>classStudent(object): def__init__(self,name): self.name=namedefsayHello(lang): print(lang) iflang=='en': print('Welcome!') else: print('你好!') >>>Student.sayHello('en') #类调用,'en'传给了lang参数enWelcome!>>>b=Student('Kim') >>>b.sayHello('zh') #类实例对象调用,'zh'传给了lang参数zh你好
注意⚠️:当前操作实验环境为 MacOS Monterey 12.6 、Python 3.10.1 。不同的分类或者叫法不一致,这个请酌情参考。其他版本略有更改,请留意。