数学运算
len(s)
返回对象内元素个数:
1 2 3
| >>> dic = {'a': 1, 'b': 3} >>> len(dic) 2
|
max(iterable,*[, key, default])
max(iterable,*[, key, default]) 3.4以前版本
max(arg1, arg2, *args[, key]) 3.8版本修改
返回最大值:
1 2 3 4 5 6 7 8
| >>> max(3, 1, 4, 2, 1) 4 >>> di = {'a': 3, 'b': 1, 'c': 4} >>> max(di) 'c' >>> a = [{'name': 'xiaohong', 'age': 18, 'gender': 'male'}, {'name': 'xiaohong', 'age': 20, 'gender': 'female'}] >>> max(a, key=lambda x: x['age']) {'gender': 'female', 'age': 20, 'name': 'xiaohong'}
|
如果已知多个列表,找出列表更长的,使用 max 方法:
1 2 3 4 5
| >>> def max_length(*lst): ... return max(*lst, key=lambda v: len(v)) ... >>> max_length([1, 2, 3], [4, 5, 6, 7], [8]) [4, 5, 6, 7]
|
代码可视化图:

再看下返回最小值函数:
min(*iterable*, ***[, *key*, *default*])
min(*arg1*, *arg2*, **args*[, *key*])
可看到,max、min 函数都有一个参数 key,它们也被称为 key 函数,key 函数一般结合更紧凑的 lambda 函数。
pow(x, y, z=None, /)
x 为底的 y 次幂,如果 z 给出,取余:
round(number[, ndigits])
四舍五入,ndigits 代表小数点后保留几位:
1 2
| >>> round(10.022222222, 3) 10.022
|
sum(iterable, /, start=0)
求和:
1 2 3 4 5
| >>> a = [1, 4, 2, 3, 1] >>> sum(a) 11 >>> sum(a, 10) 21
|
abs(x, /)
求绝对值或复数的模:
divmod(a,b)
分别取商和余数:
1 2
| >>> divmod(10, 3) (3, 1)
|
complex([real[, imag]])
创建一个复数:
1 2
| >>> complex(1, 2) (1+2j)
|
hash(object)
返回对象的哈希值:
1 2 3 4 5 6 7 8 9 10
| >>> class Student(): ... def __init__(self, id, name): ... self.id = id ... self.name = name ... def __repr__(self): ... return 'id = '+self.id+', name = '+self.name ... >>> xiaoming = Student('001', 'xiaoming') >>> hash(xiaoming) -9223372036574182193
|
id(object)
返回对象的内存地址:
1 2 3 4 5 6 7 8 9 10
| >>> class Student(): ... def __init__(self, id, name): ... self.id = id ... self.name = name ... def __repr__(self): ... return 'id = '+self.id+', name = '+self.name ... >>> xiaoming = Student('001', 'xiaoming') >>> id(xiaoming) 4489497848
|
逻辑运算
all(iterable)
接受一个迭代器,如果迭代器的所有元素都为真,返回 True,否则返回 False:
1 2 3 4
| >>> all([1, 0, 3, 6]) False >>> all([1, 2, 3]) True
|
any(iterable)
接受一个迭代器,如果迭代器里有一个元素为真,返回 True,否则返回 False:
1 2 3 4
| >>> any([0, 0, 0, []]) False >>> any([0, 0, 1]) True
|
进制转化
ascii(object)
调用对象的 repr() 方法,获得该方法的返回值。
1 2 3 4 5 6 7 8 9 10 11 12
| >>> class Student(): ... def __init__(self, id, name): ... self.id = id ... self.name = name ... def __repr__(self): ... return 'id = '+self.id+', name = '+self.name ... >>> xiaoming = Student('001', 'xiaoming') >>> print(xiaoming) id = 001, name = xiaoming >>> ascii(xiaoming) 'id = 001, name = xiaoming'
|
bin(x)
将十进制转换为二进制:
oct(x)
将十进制转换为八进制:
hex(x)
将十进制转换为十六进制: