python的self和c++的this最近在准备秋招,同时复习python和c++,在面对对象编程时发现两个语言的一些知识点有一些相似性,因此想把两个语言的共同性用自己的理解讲出来。python的self很多时候我们定义一个类时会发现类里面的成员函数参数前都会有一个self,但是当我们实例化对象后调用这个函数,却只用传入一个实参,直接跳过了self,如下例子,这是为什么呢?self到底是什么?c
转载
2023-12-06 16:00:58
71阅读
# Python self报错的实现方法
## 1. 概述
在Python中,当我们定义类和对象时,经常会使用到`self`关键字。`self`表示当前对象,通过它我们可以访问对象的属性和方法。然而,对于刚入行的小白开发者来说,可能会遇到`python self报错`的问题,即在使用`self`时出现错误。本文将向你介绍如何解决这个问题,并提供详细的步骤和代码示例。
## 2. 实现步骤
原创
2024-01-29 12:11:58
284阅读
最近在学习Python的过程中一直发现一个问题,就是在从网上看别人写的一些实例或者一些开源项目的时候,发现一个问题。在调用一个类或者一个类方法的时候,总是提示缺少传递的参数。自己写了一个简单的类似问题,如下:class Add():
def add(self):
return None
if __name__ == '__main__':
print(Add.
转载
2023-07-27 13:55:38
204阅读
又碰到了一个小错误比如一个类如下:class print_number(object):
def __init__(self,string="数字是"):
self.string=string
def print_(self,ss=3):
print("{}:{}".format(self.string,ss))
#实例化类
p=print_num
转载
2023-06-10 23:16:01
364阅读
文章目录1. 前言2. 语法2. 使用raise引发异常3. 自定义异常4. 常见的异常总结 1. 前言python的异常分为两种. (1) 内建异常,就是python自己定义的异常。 (2) 不够用,用户自定义异常, 首先看看python的异常继承树 我们可以看到python的异常有个大基类。然后继承的是Exception。所以我们自定义类也必须继承Exception。程序出现错误,会自动引发
转载
2023-12-25 13:20:14
134阅读
在python类中的各个方法(包括构造方法__init__())的参数里都要写self,下面用实验来探究self的用法,从而体会其含义。一言以蔽之self代表“本实例”,很像java里的this,但用法又稍微不太一样。1. 直接定义在类里的成员变量不能加selfclass MyClass:
"""class"""
i = 3
self.h = 5错误信息:Traceback
转载
2024-05-29 12:14:25
251阅读
报错错误代码if __name__ == "__main__": cap0 = cv2.VideoCapture(0) cap1 = cv2.VideoCapture(1) cap2 = cv2.V
原创
2022-12-08 14:32:57
287阅读
# 如何解决 "python method 写入self后报错" 问题
## 概述
在Python中,当我们定义一个类的方法时,需要将self参数作为第一个参数传入。如果在定义方法时忘记加入self参数,就会导致报错。本文将介绍如何解决这个问题,并指导刚入行的小白如何正确地编写Python类方法。
### 步骤总览
下面是解决这个问题的步骤概览:
| 步骤 | 操作 |
| ---- | -
原创
2024-07-14 04:55:51
24阅读
**Python装饰器 - 用self**
在Python中,装饰器是一种强大的工具,它可以修改或扩展一个函数的行为,而无需对原函数进行任何修改。装饰器是Python语言的一种语法糖,它允许我们在不改变函数调用方式的情况下,对函数进行额外的操作或修改。
装饰器通常通过`@`符号来应用于函数,它实际上是将被装饰的函数作为参数传递给装饰器函数,并将装饰器函数的返回值作为新的函数替代原函数。
在使
原创
2023-10-14 05:34:53
163阅读
在python的类中会使用到“self”,本文主要是谈谈类中的self和变量的关系。先看示例代码Iclass Test(object):
def __init__ (self, val1):
self.val0 = val1
def fun1(self):
print(self.val0)
def fun2(self, val2):
print(val2)
def fun3(self):
prin
转载
2023-10-18 06:41:06
84阅读
刚开始学习Python的类写法的时候觉得很是麻烦,为什么定义时需要而调用时又不需要,为什么不能内部简化从而减少我们敲击键盘的次数?你看完这篇文章后就会明白所有的疑问。self代表类的实例,而非类。实例来说明如果你依然在编程的世界里迷茫,
不知道自己的未来规划,
里面都是学习python的,
class Test:
def prt(self):
转载
2024-05-15 16:10:58
38阅读
刚开始学习Python的类写法的时候觉得很是麻烦,为什么定义时需要而调用时又不需要,为什么不能内部简化从而减少我们敲击键盘的次数?你看完这篇文章后就会明白所有的疑问。self代表类的实例,而非类。实例来说明:class Test:
def prt(self):
print(self)
print(self.__class__)
t = Test()
t.prt()执行结果如下<__main_
转载
2023-08-26 17:06:46
49阅读
Python中,类之外可以定义很多全局变量和函数,这是它与java明显的不同。为了解释器准确的找到函数或变量,需要使用self来限定方法变量的区域,这样解释器就能快速知道你调用的是类中的变量还是全局的变量了。
转载
2023-08-07 20:40:12
88阅读
概念:可以使用现有类的所有功能,并在无需重新编写原来的类(父类)的情况下对这些功能进行扩展。应用场景:一般有多个类都想要调同样的方法,就会把这些方法封装在一个父类, 多个子类就可以去调用,子类通过继承可以获得父类的属性和方法,提高开发的效率及代码的复用率。 一、继承语法: class 类名(父类)# 定义父类
class Base:
def eat(self):
print
转载
2024-02-26 22:51:52
57阅读
类的方法与普通的函数只有一个特别的区别——它们必须有一个额外的第一个参数名称,但是在调用这个方法的时候你不为这个参数赋值,Python会提供这个值。这个特别的变量指对象本身,按照惯例它的名称是self。
虽然你可以给这个参数任何名称,但是 强烈建议 你使用self这个名称——其他名称都是不赞成你使用的。使用一个标准的名称有很多优点——你的程序读者可以迅速
转载
2024-04-19 21:58:59
25阅读
树是我们常见的一种一对多的数据结构。最近为了处理一些事情,写了一颗三层的树。每层的子节点数目均不确定,动态添加。 为了方便管理,写成了嵌套树。class ModelTree():
#第一层树,创建树是必须指定根结点,不支持创建空树。
#整颗树存储在tree_dict中,key为root,value为children_dict
#children_dict中存储所有的子节点,个数不确定,动态添
转载
2023-05-26 17:12:15
279阅读
Python要self的理由Python的类的方法和普通的函数有一个很明显的区别,在类的方法必须有个额外的第一个参数 (self ),但在调用这个方法的时候不必为这个参数赋值 (显胜于隐为何Python给self赋值而你不必给self赋值?例子说明:创建了一个类MyClass,实例化MyClass得到了MyObject这个对象,然后调用这个对象的方法MyObject.
转载
2023-12-18 11:03:43
102阅读
python中的self,到底是什么角色?1. 首先明确的是self只有在类的方法中才会有,独立的函数或方法是不必带有self的。self在定义类的方法时是必须有的,虽然在调用时不必传入相应的参数。2. self名称不是必须的,在python中self不是关键词,你可以定义成a或b或其它名字都可以,但是约定成俗,不要搞另类,大家会不明白的。下例中将self改为myname一样没有错误:[root@
原创
2017-08-03 19:48:13
1185阅读
点赞
1. self代表类的实例,而非类 class Test: def prt(self): print(self) print(self.__class__) t = Test() t.prt() <__main__.Test object at 0x000002345ED1DFC8> <class ...
转载
2021-08-04 15:20:00
161阅读
首先明确的是self只有在类的方法中才会有,独立的函数或方法是不必带有self的。self在定义类的方法时是必须有的,虽然在调用时不必传入相应的参数。 __init__中self有一部分是从外面传来的参数,需要实例化时就传入 类中self带的参数相当于类的属性,没带的是局部变量,可能是类的局部变量,
转载
2017-08-16 21:00:00
264阅读
2评论