python中定义函数时,self怎么理解:

在定义方法的时候有一个self参数,在所有的方法声明中都要用到这个参数,这个参数代表实例对象本身,当你用实例调用方法的时候,

由解释器自动的把实例对象本身悄悄的传递给方法,不需要你自己传递self进来,例如有一个带有两个参数的方法,你所有调用只需要传递进来二个参数。

例如这两个文件:

文件名: test.py

class A:

def  abc(self,a,b):

a=a+1

b=b+1



文件名: test2.py

import A

A.abc(1,2)

print a,b

test2.py中如果使用a,b两个参数时,需要传递a,b两个参数,除了这两个参数以外的内容也是需要传递的,那么其中的self就代表了其他信息;

实例对象:

什么是实例对象?

例化对象你大体可以理解成为引用的意思...

比如说吧你爸爸有一台车...你想开...这个时候能,你得跟你老爸说,车借我开开,然后你老爸钥匙给你,你可以开了!要是你不去开口说,没钥匙肯定开不走!

实例化的意思也差不多,你把一个类作为一个对象,就当成是车,你想开...所以你跟编译器(也就是狭义的电脑)请求,ONECLASS TWOCLASS=NEW ONECLASS()就是一个跟机器借车开的语法,这里边ONECLASS和TWOCLASS就是个名字的差异,比如说你爸爸喜欢跟他自己的车叫亲爱的,那么你开着车的时候别管是谁的,你也可以叫它为宝贝...ONECLASS是不能改的,因为你得告诉机器你借的是哪台车...然后你借过来之后就随便你叫什么了....类下边的方法啊,公共属性都是可以借用过来的,好比说这台车有四个轮子一个方向盘就是属性,方法就是这台车可以正着开,也可以倒着开....所以无论你想正着开还是倒着开,你的前提都需要把车借过来才能开...实例化就是借车...调用方法就是借车之后的操作!

这就是实例化(源自百度知道)

时间: 2024-10-12 22:03:49

python中定义函数时,self怎么理解:的相关文章

python中定义class时self的理解

很多人都对self的作用不理解,觉得多余,实际上self大有其用. 先给出一个实例: 1 >>> class a_class: 2 def func(self): 3 print(self) 4 print(self.__class__) 5 6 >>> a= a_class() 7 >>> a.func 8 <bound method a_class.func of <__main__.a_class object at 0x000000

Python - 在定义函数时,为什么默认参数不能放在必选参数前面?

直接定义这样的函数时,Python会报错: Python 3.4.2 (v3.4.2:ab2c023a9432, Oct 6 2014, 22:16:31) [MSC v.1600 64 bit (AMD64)] on win32 Type "copyright", "credits" or "license()" for more information. >>> def foo(p1, p2=6, p3): return 0

python中定义函数和参数的传递问题

作者:達聞西链接:https://zhuanlan.zhihu.com/p/24162430来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 5.2.4 函数.生成器和类 还是从几个例子看起: def say_hello(): print('Hello!') def greetings(x='Good morning!'): print(x) say_hello() # Hello! greetings() # Good morning! greetings("Wh

Python中的函数详解

声明:转载自伯乐在线 Python中的函数,无论是命名函数,还是匿名函数,都是语句和表达式的集合.在Python中,函数是第一个类对象,这意味着函数的用法并没有限制.Python函数的使用方式就像Python中其他值一样,例如字符串和数字等.Python函数拥有一些属性,通过使用Python内置函数dir就能查看这些属性,如下代码所示: def square(x): return x**2 >>> square <function square at 0x031AA230>

【和我一起学python吧】python 中的函数

一.函数的定义: Python中使用def关键字定义函数,函数包括函数名称和参数,不需要定义返回类型,Python能返回任何类型: Python代码   #没有返回值的函数,其实返回的是None def run(name): print name,'runing' #函数体语句从下一行开始,并且第一行必须是缩进的 >>>run('xiaoming') xiaoming runing >>>print run('xiaoming') xiaoming runing Non

Python 中 if __name__ == &#39;__main__&#39; 的正确理解

程序入口 对于很多编程语言来说,程序都必须要有一个入口,比如 C,C++,以及完全面向对象的编程语言 Java,C# 等.如果你接触过这些语言,对于程序入口这个概念应该很好理解,C 和 C++ 都需要有一个 main 函数来作为程序的入口,也就是程序的运行会从 main 函数开始.同样,Java 和 C# 必须要有一个包含 Main 方法的主类来作为程序入口. 而 Python 则有不同,它属于脚本语言,不像编译型语言那样先将程序编译成二进制再运行,而是动态的逐行解释运行.也就是从脚本第一行开始

Python中定义字符串和修改字符串的原理

   Python是用C语言开发的,在C语言中是没有字符串的概念,只有字符和字符数组,一般用字符数组表示字符串,所以在Python中定义一个字符串时,其实就是在内存中开辟一块空间, 例如: 定义一个字 符串string1=hello  --------->5个字符 字符数组['h','e','l','l','o'],其在内存中存储的位置为:['h','e','l','l','o'] 而如果想要修改该字符串为hellosb,在需要在内存中重新开辟一块数据空间为:['h','e','l','l','

python 中main函数总结

Python使用缩进对齐组织代码的执行,所有没有缩进的代码(非函数定义和类定义),都会在载入时自动执行,这些代码,可以认为是Python的main函数. 每个文件(模块)都可以任意写一些没有缩进的代码,并且在载入时自动执行,为了区分主执行文件还是被调用的文件,Python引入了一个变量__name__,当文件是被调用时,__name__的值为模块名,当文件被执行时,__name__为'__main__'.这个特性,为测试驱动开发提供了极好的支持,我们可以在每个模块中写上测试代码,这些测试代码仅当

Python学习【第8篇】:python中的函数

1.python中函数定义方法 def test(x): "This istest" y = x*2+1 return y vaule = test(2)print(vaule)运行结果:5def:定义函数关键字test:函数名():内可定义形参"":文档描述(非必要,但是建议为函数添加注释信息)x+=1:泛指代码块或程序处理逻辑return:定义返回值函数的好处:1.代码重用2.保持一致性,易维护3.可扩展性 2.过程定义:过程就是简单特殊没有返回值的函数 def