python学习之生成器yieldyield的作用是使函数生成一个结果序列而不是一个值,任何使用yield的函数都称为生成器,调用生成器会创建一个对象,该对象通过连续调用next()或者__next__()方法生成结果序列一般情况>>> def count(n,m): >>> print('这是一个循环外部测试') >>> wh
1 引言在Python当中,如果代码写得规范一些,通常会写上一句“if __name__==’__main__:”作为程序的入口,但似乎没有这么一句代码,程序也能正常运行。这句代码多于吗?原理又在哪里?本篇博文对此进行总结说明。2 程序入口学过Java、C、C++的程序员应该都知道,每次开启一个程序,都必须写一个主函数作为程序的入口,也就是我们常说的main函数。如下所示, main()就是Jav
class example(object): data1 = '' date2 = "" def __init__(self, para): self._function1() def _function1(self): self.data1="test data" print example().
转载 2024-06-05 21:34:34
29阅读
# encoding: utf-8# 这个位置位于top level context,代表Object的默认对象main p self # => main p self.class # => Object @self1 = self # 因为所有自定义类都位于main context之中,所以这是Object的实例方法 # 同时也可以说是一个全局方法 de
转载 2023-06-18 14:40:33
47阅读
树是我们常见的一种一对多的数据结构。最近为了处理一些事情,写了一颗三层的树。每层的子节点数目均不确定,动态添加。 为了方便管理,写成了嵌套树。class ModelTree(): #第一层树,创建树是必须指定根结点,不支持创建空树。 #整颗树存储在tree_dict中,key为root,value为children_dict #children_dict中存储所有的子节点,个数不确定,动态添
转载 2023-05-26 17:12:15
279阅读
pythonself和c++的this最近在准备秋招,同时复习python和c++,在面对对象编程时发现两个语言的一些知识点有一些相似性,因此想把两个语言的共同性用自己的理解讲出来。pythonself很多时候我们定义一个类时会发现类里面的成员函数参数前都会有一个self,但是当我们实例化对象后调用这个函数,却只用传入一个实参,直接跳过了self,如下例子,这是为什么呢?self到底是什么?c
python中的self,到底是什么角色?1. 首先明确的是self只有在类的方法中才会有,独立的函数或方法是不必带有self的。self在定义类的方法时是必须有的,虽然在调用时不必传入相应的参数。2. self名称不是必须的,在pythonself不是关键词,你可以定义成a或b或其它名字都可以,但是约定成俗,不要搞另类,大家会不明白的。下例中将self改为myname一样没有错误:[root@
原创 2017-08-03 19:48:13
1185阅读
1点赞
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评论
# Python中的self关键字 ## 简介 在Python中,self是一个特殊的关键字,它表示类的实例对象本身。通过使用self关键字,我们可以在类中访问实例对象的属性和方法。 ## 为什么需要self关键字? 在理解self关键字之前,我们需要先了解Python中的类和对象的概念。 类是一种用户自定义的数据类型,用于表示具有相似属性和方法的对象的集合。对象是类的实例,它包含了类定
原创 2023-08-28 08:05:47
152阅读
# Python for-in self ## 1. 概述 首先,让我们来了解一下整个过程的流程。在Python中,使用`for-in`循环来遍历一个可迭代对象中的元素是非常常见的操作。而当我们想要在循环内部访问当前元素本身时,可以使用关键字`self`来引用当前元素。 下面是整个过程的流程图: ```mermaid pie title "Python for-in self" "开始" :
原创 2023-08-30 11:34:04
205阅读
最近在学习Python的过程中一直发现一个问题,就是在从网上看别人写的一些实例或者一些开源项目的时候,发现一个问题。在调用一个类或者一个类方法的时候,总是提示缺少传递的参数。自己写了一个简单的类似问题,如下:class Add(): def add(self): return None if __name__ == '__main__': print(Add.
最近在看python的一些代码,学习并且要掌握这些在短期内还是有一点难度的,日积月累,浮躁是个大问题。对于一个基本没从事过开发的我来说,看到python self这个值的时候很不理解,也不知道它的含义是什么,后面经查阅相关资料才得以弄明白。 类的方法与普通的函数只有一个特别的区别&mdash;&mdash;它们必须有一个额外的第一个参数名称,但是在调用这个方法的时候你不为这个参数赋值,Pytho
原创 2013-01-25 10:17:46
2677阅读
1.2.1 一个.py文件被其他.py文件引用 假设我们有一个const.py文件,内容如下: 现在,我们写一个用于计算圆面积的area.py文件,area.py文件需要用到const.py文件中的PI变量。 从const.py中,我们把PI变量导入area.py: 如上,我们可以看到if __na
转载 2019-01-26 19:22:00
74阅读
2评论
python self class Student(object): def __init__(self, name, score): self.name = name self.score = score st=Student('lg',99) print(st.n...
原创 2023-01-13 00:00:53
86阅读
又碰到了一个小错误比如一个类如下: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阅读
先看self-attentionclass SelfAttention(nn.Module): def __init__(self, input_vector_dim: int, dim_k=None, dim_v=None): """ 初始化SelfAttention,包含如下关键参数: input_vector_dim: 输入向量的维度,
转载 2024-08-14 12:31:59
217阅读
self    self只有在类的方法中才会有,独立的函数和方法里面是没有的,在定义类的时候 python 是强制声明 self 的,不过在实例化之后调用时可以不用传入相应的参数,self 不是 python 的关键字,只是约定俗成的,把 self 换成别的也是可以的。    self 是指类实例对象本身,不是类本身,即类实例化之后的对象。
特殊参数self的作用:self会接收实例化过程中传入的数据,当实例对象创建后,实例便会代替 self,在代码中运行。self代表的是类的实例本身,方便数据的流转。对此,我们需要记住两点:第一点:只要在类中用def创建方法时,就必须把第一个参数位置留给 self,并在调用方法时忽略它(不用给self传参)。第二点:当在类的方法内部想调用类属性或其他方法时,就要采用self.属性名或self.方法名
转载 2023-07-03 20:26:16
217阅读
文章目录1. 前言2. 语法2. 使用raise引发异常3. 自定义异常4. 常见的异常总结 1. 前言python的异常分为两种. (1) 内建异常,就是python自己定义的异常。 (2) 不够用,用户自定义异常, 首先看看python的异常继承树 我们可以看到python的异常有个大基类。然后继承的是Exception。所以我们自定义类也必须继承Exception。程序出现错误,会自动引发
  • 1
  • 2
  • 3
  • 4
  • 5