11 转为集合
返回一个 set 对象,集合内不允许有重复元素:
>>> a = [1,4,2,3,1]
>>> set(a)
{1, 2, 3, 4}
12 转为切片
class slice( start , stop [, step ])
返回一个由 range(start, stop, step) 指定索引集的 slice 对象,代码可读性变好。
>>> a = [1,4,2,3,1]
>>> my_slice = slice(0,5,2)
>>> a[my_slice]
[1, 2, 1]
13 转元组
tuple()
将对象转为一个不可变的序列类型
>>> a=[1,3,5]
>>> a.append(7)
>>> a
[1, 3, 5, 7]
#禁止a增删元素,只需转为元组
>>> t=tuple(a)
>>> t
(1, 3, 5, 7)
14 转冻结集合
创建不可修改的集合:
>>> a = frozenset([1,1,3,2,3])
>>> a # a 无 pop,append,insert等方法
frozenset({1, 2, 3})
15 商和余数
分别取商和余数
>>> divmod(10,3)
(3, 1)
16 幂和余同时做
pow 三个参数都给出表示先幂运算再取余:
>>> pow(3, 2, 4)
1
17 四舍五入
四舍五入, ndigits
代表小数点后保留几位:
>>> round(10.045, 2)
10.04
>>> round(10.046, 2)
10.05
18 查看变量所占字节数
>>> import sys
>>> a = {'a':1,'b':2.0}
>>> sys.getsizeof(a) # 变量占用字节数
240
19 门牌号
返回对象的内存地址
>>> class Student():
def __init__(self,id,name):
self.id = id
self.name = name
>>> xiaoming = Student('001','xiaoming')
>>> id(xiaoming)
2281930739080
20 排序函数
排序:
>>> a = [1,4,2,3,1]
#降序
>>> sorted(a,reverse=True)
[4, 3, 2, 1, 1]
>>> a = [{'name':'xiaoming','age':18,'gender':'male'},
{'name':'xiaohong','age':20,'gender':'female'}]
#按 age升序
>>> sorted(a,key=lambda x: x['age'],reverse=False)
[{'name': 'xiaoming', 'age': 18, 'gender': 'male'},
{'name': 'xiaohong', 'age': 20, 'gender': 'female'}]
评论区