您当前的位置:首页 > 互联网教程

python函数与方法的区别总结

发布时间:2025-05-11 23:59:31    发布人:远客网络

python函数与方法的区别总结

一、python函数与方法的区别总结

内置函数:python内嵌的一些函数。

匿名函数:一行代码实现一个函数功能。

自定义函数:根据自己的需求,来进行定义函数。

普通方法:直接用self调用的方法。

私有方法:__函数名,只能在类中被调用的方法。

属性方法:@property,将方法伪装成为属性,让代码看起来更合理。

特殊方法(双下划线方法):以__init__为例,是用来封装实例化对象的属性,只要是实例化对象就一定会执行__init方法,如果对象子类中没有则会寻找父类(超类),如果父类(超类)也没有,则直接继承object(python 3.x)类,执行类中的__init__方法。类方法:通过类名的调用去操作公共模板中的属性和方法。

静态方法:不用传入类空间、对象的方法,作用是保证代码的一致性,规范性,可以完全独立类外的一个方法,但是为了代码的一致性统一的放到某个模块(py文件)中。

(1)函数作用域:从函数调用开始至函数执行完成,返回给调用者后,在执行过程中开辟的空间会自动释放,也就是说函数执行完成后,函数体内部通过赋值等方式修改变量的值不会保留,会随着返回给调用者后,开辟的空间会自动释放。

(2)方法作用域:通过实例化的对象进行方法的调用,调用后开辟的空间不会释放,也就是说调用方法中对变量的修改值会一直保留。

(1)函数:通过“函数名()”的方式进行调用。

(2)方法:通过“对象.方法名”的方式进行调用。

二、python函数和方法区别

内置函数:python内嵌的一些函数。

匿名函数:一行代码实现一个函数功能。

自定义函数:根据自己的需求,来进行定义函数。

普通方法:直接用self调用的方法。

私有方法:__函数名,只能在类中被调用的方法。

属性方法:@property,将方法伪装成为属性,让代码看起来更合理。

特殊方法(双下划线方法):以__init__为例,是用来封装实例化对象的属性,只要是实例化对象就一定会执行__init方法,如果对象子类中没有则会寻找父类(超类),如果父类(超类)也没有,则直接继承object(python 3.x)类,执行类中的__init__方法。

类方法:通过类名的调用去操作公共模板中的属性和方法。

静态方法:不用传入类空间、对象的方法,作用是保证代码的一致性,规范性,可以完全独立类外的一个方法,但是为了代码的一致性统一的放到某个模块(py文件)中。

(1)函数作用域:从函数调用开始至函数执行完成,返回给调用者后,在执行过程中开辟的空间会自动释放,也就是说函数执行完成后,函数体内部通过赋值等方式修改变量的值不会保留,会随着返回给调用者后,开辟的空间会自动释放。

(2)方法作用域:通过实例化的对象进行方法的调用,调用后开辟的空间不会释放,也就是说调用方法中对变量的修改值会一直保留。

(1)函数:通过“函数名()”的方式进行调用。

(2)方法:通过“对象.方法名”的方式进行调用。

三、python 解释本方法的实现原理

1、你好, mark= int(input("mark:"))这句没啥说的,声明一个变量mark,而mark的赋值说白了就是你从键盘上输啥,mark的值就是啥.

2、至于print(["Fail","Pass","Good"][(mark>=60)+(mark>=80)])语句,其实抽象出来就是print(list[i]),["Fail","Pass","Good"]相当于这里的list, [(mark>=60)+(mark>=80)]相当于这里的[i],所以简单来说print()函数打印的就是列表中的某个元素,只不过索引[i]的写法看着比较邪乎。索引[(mark>=60)+(mark>=80)]中两个括号中是两个逻辑表达式,而逻辑表达如果成立,通常值为true,逻辑表达式不成立,值为false,而逻辑琢达式的值用在算数运算中,true表示1,false表示0。如此一来[(mark>=60)+(mark>=80)]这个索引中的内容就变成了[0或1+0或1],如mark=70,则[(70>=60)+(70>=80)]这个计算出来就是[1+0],即[1],也就是说当你输入的值为70的时候,print()函数就变为了print(["Fail","Pass","Good"][1]),这样就直观了