当前位置:首页 » 编程语言 » pythonself调用

pythonself调用

发布时间: 2022-07-02 08:41:58

1. python函数调用参数需要加self吗

不用,例如我自定义一个类里面包括一个函数 def test(self,url):...,调用的时候初始化类,直接用
test(url)就可以了,不用加self

2. python类中self的问题

原因都出在第4行这句: test3.count += 1 #!!!注意此处不是self.count
你每运行一次 init() 函数 count 就会累加一
注意 你累加的是 test3.count 而不是 self.count
所以 运行了三次 init() 函数 的输出是 1 2 3
如果 你累加的是 self.count 就会输出三次 1 1 1
***首先要理解上面所说的 再继续看下面的***
既然如此 print(cc3.count,cc4.count) #返回2,2 就是正确的
cc3.count 指向的 test3().count 输出的是 2 没异议是吧
cc4.count 指向的也是 test3().count 为什么不是 2 都是同一个东西
print(cc3.count,cc4.count) #返回3,6
前面第一个3 就不用多说了
后面的第二个6 是因为你 cc4.count=6 这句指定了他是6
比如 a = 6 输出a会是什么? 当然是6啊

3. Python中的self有啥用 self.name=name这句话有啥作用

self是对“对象”自身的引用。相当于c++中的this。python中self在类的方法中必须以传入参数写在函数的参数列表中。它实际上是指向类的对象的一个类似于C++中指针的私有变量。

python规定:访问类成员时,需要在前面加上this。这里,this.name = name表示为Person类添加了属性name。

如果变量前不加this,则视为局部变量。这个变量会在方法运行结束后失效。而属性在整个类的范围内都是有效的。

self是只有在类中才会有的。self在定义类的方法时是必须有的,虽然在调用时不必传入相应的参数。

(3)pythonself调用扩展阅读:

1、if 语句

1)基本用法:

if 要判断的条件:条件成立的时候,要做的事情

else:条件不成立的时候,要做的事情

if和else语句以及各自的缩进部分都是一个完整的代码块

2、if 逻辑运算

and:

# 条件1 and 条件2

# 两个条件同时满足,就返回True

# 两个条件都不满足,返回False

4. python中self是什么

python中的self就相当于C++中的this指针
也就是指向对象本身的指针
self.name = name 就是当前对象的成员变量name赋值为name。

5. 如何理解并正确使用python中的self

类的方法与普通的函数只有一个特别的区别——它们必须有一个额外的第一个参数名称,但是在调用这个方法的时候你不为这个参数赋值,Python会提供这个值。这个特别的变量指对象本身,按照惯例它的名称是self。 虽然你可以给这个参数任何名称,但是 强烈建议 你使用self这个名称——其他名称都是不赞成你使用的。使用一个标准的名称有很多优点——你的程序读者可以迅速识别它,如果使用self的话,还有些IDE(集成开发环境)也可以帮助你。 =======================================================给C++/java/C#程序员的注释 Python中的self等价于C++中的self指针和Java、C#中的this参考。 =======================================================你一定很奇怪Python如何给self赋值以及为何你不需要给它赋值。举一个例子会使此变得清晰。假如你有一个类称为MyClass和这个类的一个实例MyObject。当你调用这个对象的方法MyObject.method(arg1, arg2)的时候,这会由Python自动转为MyClass.method(MyObject, arg1, arg2)——这就是self的原理了。 这也意味着如果你有一个不需要参数的方法,你还是得给这个方法定义一个self参数。 我这里补充一下几个实例程序以加深理解: class Person: def sayHi(self): print 'Hello,how are you?'p=Person() p.sayHi()结果显示为: Hello,how are you?

6. 用python定义类的时候用self定义,但是调用的时候他显示没有我定义的参数,求各位大佬解答

你init里面试pos=t,但是你没有传进去t啊,改成self.pos=pos

7. 为什么Python必须在方法定义和调用中显式使用“self”

为什么Python必须在方法定义和调用中显示使用“self”?

这个想法借鉴了 Mola-3 语言。出于多种原因它被证明是非常有用的。

首先,更明显的显示出,使用的是方法或实例属性而不是局部变量。

阅读self.x或self.meth()可以清楚地表明,即使您不知道类的定义,也会使用实例变量或方法。

在 C++ 中,可以通过缺少局部变量声明来判断(假设全局变量很少见或容易识别) —— 但是在 Python 中没有局部变量声明,所以必须查找类定义才能确定。

一些 C++ 和 Java 编码标准要求实例属性具有m_前缀,因此这种显式性在这些语言中仍然有用。

其次,这意味着如果要显式引用或从特定类调用该方法,不需要特殊语法。

在 C++ 中,如果你想使用在派生类中重写基类中的方法,你必须使用::运算符 -- 在 Python 中你可以编写baseclass.methodname(self, <argumentlist>)。

这对于__init__()方法非常有用,特别是在派生类方法想要扩展同名的基类方法,而必须以某种方式调用基类方法时。

最后,它解决了变量赋值的语法问题:

为了 Python 中的局部变量(根据定义!)在函数体中赋值的那些变量(并且没有明确声明为全局)赋值,就必须以某种方式告诉解释器一个赋值是为了分配一个实例变量而不是一个局部变量,它最好是通过语法实现的(出于效率原因)。

C++ 通过声明来做到这一点,但是 Python 没有声明,仅仅为了这个目的而引入它们会很可惜。

使用显式的self.var很好地解决了这个问题。类似地,对于使用实例变量,必须编写self.var意味着对方法内部的非限定名称的引用不必搜索实例的目录。

换句话说,局部变量和实例变量存在于两个不同的命名空间中,您需要告诉 Python 使用哪个命名空间。

更多Python问答知识,请关注Python视频教程!!

8. Python中self的使用

如果你学过C++或者java的话,self就同this指针,表示当前正在被调用的这个对象

9. 关于Python中的self

python中的self就相当于c++中的this指针
也就是指向对象本身的指针
self.name
=
name
就是当前对象的成员变量name赋值为name。

10. Python的self

self.name是一个函数调用语句,意思就是调用self这个函数里name这个变量,而这句语句是把name赋给函数中这个变量,您删掉它后再print,程序会认为没有定义,当然无法打印

热点内容
硬盘存储服务器怎么连接 发布:2025-02-04 10:00:55 浏览:26
javaip端口 发布:2025-02-04 09:27:09 浏览:855
国产存储科技进步二等奖 发布:2025-02-04 09:13:00 浏览:693
编程课v 发布:2025-02-04 08:45:00 浏览:108
模拟器能有手机脚本么 发布:2025-02-04 08:39:50 浏览:759
android显示html图片 发布:2025-02-04 08:35:31 浏览:793
如何查学信网账号及密码 发布:2025-02-04 08:33:55 浏览:504
linux32位jdk 发布:2025-02-04 08:33:55 浏览:249
康佳服务器连接失败是怎么回事 发布:2025-02-04 08:18:51 浏览:918
编译编译有什么 发布:2025-02-04 08:05:52 浏览:737