1、divmod可以同时返回两个数的商和余数,如divmod(10, 3) = (3, 1)
2、Python是可以设置全局精度的,用decimal模块,
from decimal import getcontext
getcontext().prec = 4 #设置全局精度 小数点后保留4位有效位
3、注意is
与比较运算符“==”的区别
is用于判断两个变量的引用是否为同一个对象,而==用于判断变量引用的对象的值是否相等!
如果有两个人都叫张三。is比较的结果是false,因为他们是不同的两个人,==比较是True,因为他们都叫张三(值一样)。
另外注意,跟C++/Java里面 '==' 和 equals的区别和联系,在C++/Java里面,== 对于基本类型来说是值比较,对于引用类型来说是比较的是引用;而 equals 默认情况下是引用比较,只是很多类重写了 equals 方法,比如 String、Integer 等把它变成了值比较,所以一般情况下 equals 比较的是值是否相等。
4、一个常用的内置函数:id()
,用它可以查看某个变量或者对象的内存地址,两个相同内存地址的对象被认为是同一个对象。
5、Python的列表是一个有序可重复的元素集合,可嵌套、迭代、修改、分片、追加、删除,成员判断;从数据结构角度看,Python的列表是一个可变长度的顺序存储结构,每一个位置存放的都是对象的指针,列表内容是可修改的。
6、元组也是序列结构,但是是一种不可变序列,你可以简单的理解为内容不可变的列表。除了在内部元素不可修改的区别外,元组和列表的用法差不多。
7、Python函数动态参数,顾名思义,动态参数就是传入的参数的个数是动态的,可以是1个、2个到任意个,还可以是0个。在不需要的时候,你完全可以忽略动态函数,不用给它传递任何值。注意:动态参数,必须放在所有的位置参数和默认参数后面!
def func(name, age, sex='male', *args, **kwargs):
pass
*args 一个星号表示接收任意个参数。调用时,会将实际参数打包成一个元组传入形式参数。
**kwargs 两个星表示接受键值对的动态参数,数量任意。调用的时候会将实际参数