Python类装饰器
Python 函数装饰器 1. 前言 什么是装饰器呢? 就是在特定条件下为某些函数再不改动函数体的时候为函数新添加一些功能,这就是装饰器 实现原理: 基于@语法和函数闭包,将原函数封装在闭包中,然后将函数赋值为一个新的函数(内置函数),执行函数时再在内层函数中执行闭包中的原函数 实现效果: 可以在你改变函数内部代码和调用的前提下… 阅读更多 »Python类装饰器
Python 函数装饰器 1. 前言 什么是装饰器呢? 就是在特定条件下为某些函数再不改动函数体的时候为函数新添加一些功能,这就是装饰器 实现原理: 基于@语法和函数闭包,将原函数封装在闭包中,然后将函数赋值为一个新的函数(内置函数),执行函数时再在内层函数中执行闭包中的原函数 实现效果: 可以在你改变函数内部代码和调用的前提下… 阅读更多 »Python类装饰器
1. 静态类方法@staticmethod和@classmethod的关系 1.1. 基础介绍
1 2 3 4 5 6 7 8 9 10 11 |
class MyClass: def method(self): return 'instance method called', self @classmethod def classmethod(cls): return 'class method called', cls @staticmethod def staticmethod(): return 'static method called' |
实例方法 MyClass调用的第一个方法method是常规实例方法。这是您大多数时候会使用的基本,简洁的方法类型。您可以看到该方法采用一个参数,self该参数指向MyC… 阅读更多 »Python静态类方法(转载)
1. __init__ Python在你实例化class类的时候会检查这个类中是否有init,如果有就会调用它。进行初始化。init()方法意义重大的原因有两个: 在对象生命周期中初始化;每个对象必须正确初始化后才能正常工作。 _init__()参数值可以有多种形式。 [crayon-641e1481503d9630190392… 阅读更多 »Python部分默认函数
1. call 例类Run中展示call的使用方法,call接收对象传入的参数,可在call方法里执行某一特定对象的参数和方法(pytorch中模型正向传播的forward应该是对该函数的重写):
1 2 3 4 5 6 7 |
class Run(): def __init__(self,a): print('这是a:',a) def __call__(self, *args, **kwargs): print("这是call里的其他参数",args) test=Run(123) test('hehe') |
输出: [crayon-641e14815170691621689… 阅读更多 »Python类中部分默认函数的调用
在 Python 中,* 和 ** 具有语法多义性,具体来说是有四类用法。 1. 算数运算 * 代表乘法 ** 代表乘方
1 2 3 4 |
>>> 2 * 5 10 >>> 2 ** 5 32 |
2. 函数形参 *args 和 **kwargs 主要用于函数定义。 你可以将不定数量的参数传递给一个函数。不定的意思是:预先并不知道, 函数… 阅读更多 »Python3 * 和 ** 运算符(转载)
1. 概述 添加行: df.loc[]以及df.append()两种方法 添加列: df[]和df.insert()两种方法 添加行列: concat()和reindex()两种方法 loc bug解决 2. 添加行 2.1. 采用loc[]方法 loc方法和iloc方法一样,可以索引DataFrame数据,一般是通过data.… 阅读更多 »Python pandas中DataFrame中增删行列
1. 引入numpy第三方库 首先我们引入numpy这个第三方库,如果有同学没安装numpy可在命令行中pip install numpy进行安装(Mac用户 sudo pip3 install numpy) 测试采用python版本3.7.0 64bit
1 |
import numpy as np |