__defaults__
摘要:例子:引入 def foo(abc=[]): abc.append(200) print(abc) foo() foo() 结果: [200] [200, 200] 第二次调用为什么问什么打印的是[ 200,200],而不是[ 200 ]? 因为函数即对象,python把函数的默认值放在了属性中,这
阅读全文
posted @
2023-06-11 10:12
白的枫叶
阅读(45)
推荐(0)
__dict__
摘要:1. __dict__ 有什么用?基本定义是啥? python 中__dict__存储了该对象的一些属性 类和实例分别拥有自己的__dict__ 在__init__中声明的变量,会存到实例的__dict__中 2.举个例子 类的静态函数、类函数、普通函数、全局变量以及一些内置的属性都是放在类__di
阅读全文
posted @
2023-06-11 09:37
白的枫叶
阅读(5)
推荐(0)
global和nonlocal的区别
摘要:文章背景: Python中的变量,存在相应的作用域。根据作用域的不同,主要有局部变量、全局变量和非局部变量。关键字global用于定义全局变量,而关键字nonlocal用于定义非局部变量。 本文在查阅相关资料的基础上,对局部变量、全局变量和非局部变量进行了介绍,还对关键字global和nonloca
阅读全文
posted @
2023-05-12 11:15
白的枫叶
阅读(239)
推荐(0)
@classmethod 和 @staticmethod
摘要:1.@classmethod 官方文档说明: classmethod是用来指定一个类的方法为类方法,没有此参数指定的类的方法为实例方法,使用方法如下: class C: @classmethod def f(cls, arg1, arg2, ...): ... 简单来说,类方法,我们不用通过实例化
阅读全文
posted @
2023-04-20 21:51
白的枫叶
阅读(474)
推荐(0)
小知识点总结
摘要:潜复制与深复制 l = [1, 1] ll = l.copy() lll = l print(id(l), id(ll), id(lll)) 输出: 2686293370944 2686293337472 2686293370944 取整 1.单纯取整,即只要整数部分 print(int(9.5))
阅读全文
posted @
2023-04-20 21:31
白的枫叶
阅读(12)
推荐(0)
and/or与&/|的区别
摘要:1.and/or用于整个对象 在Python中所有的“非零”对象都会被会被判定为True。 a = 'hello world!' b = '' c = 0 print(bool(a)) print(bool(b)) print(bool(c)) print(bool(a and b)) print(
阅读全文
posted @
2023-02-21 21:06
白的枫叶
阅读(43)
推荐(0)