摘要: 当写了一个装饰器作用在某个函数上时,该函数的元信息就会丢失,比如名字,文档,注解和参数签名等。 举例: import time def timer_func(func): ''' 用于对调用func函数时进行计时 :param func: 函数对象作为外函数的入参 :return: 内函数 ''' 阅读全文
posted @ 2021-06-01 23:56 千翻娃儿 阅读(48) 评论(0) 推荐(0)
摘要: 在python中,关于类的继承有很多场景和知识点。今天聚焦在一个场景:有一个父类A,类中定义了某个问题中的通用属性和方法(即后面的子类都需要用到),在子类B中需要继承这些属性和方法,同时添加自己特有的属性和方法,应该如何实现? 在子类中,继承并初始化父类属性的方式有两种: 显示调用父类的初始化函数, 阅读全文
posted @ 2021-05-27 00:22 千翻娃儿 阅读(561) 评论(0) 推荐(0)
摘要: 概述 python中的下划线主要分为如下几类: 前置单下划线,如_a,_variable,主要是用于将变量或方法定义为私有属性。这里的私有属性并非如java中的私有,而是一种约定俗成,想强行访问仍旧可以正常访问。 后置单下划线,如a_,val_,主要用于将变量区别,如变量名称和关键字冲突,后面加个下 阅读全文
posted @ 2021-05-26 00:03 千翻娃儿 阅读(1038) 评论(0) 推荐(0)
摘要: 概述 在python中编写类时,经常会看到双下划线的方法,如__init__ ,__str__等。这类方法称为魔法方法,这类方法一般会自动调用,不需要class.method()的形式进行手动调用。这里简介两个用来描述对象信息/名称的魔法方法,__str__和__repr__;当我们想自定义某个对象 阅读全文
posted @ 2021-05-24 23:30 千翻娃儿 阅读(95) 评论(0) 推荐(0)
摘要: 函数闭包入门 什么是闭包 闭包是一种特殊的函数,闭包一般由两个函数构成,分别为内函数和外函数,内函数会引用外函数传入的参数,而外函数返回的结果是内函数本身。 比如: def func_out(a):#外函数 b=10#a,b都是外函数的变量 def func_in(c):#c是内函数的变量 retu 阅读全文
posted @ 2021-05-21 23:24 千翻娃儿 阅读(128) 评论(0) 推荐(0)
摘要: 不可变对象作为默认参数 一般来说,函数的默认参数都用不可变对象来作默认参数,如int,str,None,tuple,bool等。 举例: def func(x,y=2): return x+yfunc(1)>>>print(func(1))3>>>print(func(1,10))11 在实际工程中 阅读全文
posted @ 2021-05-21 00:00 千翻娃儿 阅读(492) 评论(0) 推荐(0)
摘要: *args *args是为了传入任意不定数量的参数 所有的不定参数都在args里面,形成一个tuple传入函数内部 *args一般用在关键字参数后面 def func(a,*args): print(type(args)) print(args) print(a) >>>func(1)<class 阅读全文
posted @ 2021-05-20 00:04 千翻娃儿 阅读(419) 评论(0) 推荐(0)
摘要: 1. 变量,对象和引用 (1) 变量,对象和引用的概念 Python中关于变量有三个概念需要明确,分别是变量,引用,对象。 变量:python中的变量简而言之就是指针,变量总是存放对象的引用(或者说是对象的地址,id); 因此每个变量所需要的存储空间大小一致,与所指向的对象类型无关,因为每个变量都只 阅读全文
posted @ 2021-05-18 23:10 千翻娃儿 阅读(1099) 评论(0) 推荐(0)