主要内容
复数,测试运算符 in,集合运算符,输出间隔符,排序与逆序,枚举与迭代 enumerate函数,map(),reduce(),filter(),range(),zip().
学校python课,随便记一记,方便复习省的期末白给
复数
定义
1 | x = 3 + 4j |
取模
1 | abs(x) |
虚部和实部
1 | x.imag |
共轭复数
1 | x.conjugate() |
测试运算符 in
用于测试对象是否是另一对象中的元素
1 | 3 in [1,2,3] |
集合运算符
1 | {1,2,3} | {3,4,5} #并 |
输出间隔符
sep之前为输出内容sep =用于调整间隔符,默认为空格end =为输出完数据之后再输出什么
排序与逆序
打乱
1 | x = list(range(11)) |
按长度排序,逆序
1 | sorted(x, key = lambda item: len(str(item)), reverse = True) |
枚举与迭代 enumerate
enumerate() 函数用来枚举可迭代对象中的元素
1 | list(enumerate('abcd')) |
map()
map(func, index) 把 index 中每个对象都进行一次 func 函数,然后把映射得到的对象作为结果
1 | list(map(str, range(5))) |
reduce()
把一个参数为 $2$ 的函数累计迭代运算
1 | from functools import reduce |
相当于:
第一次:x = 1, y = 2, ans = 3
第二次:x = 3, y = 3, ans = 6
第三次:x = 6, y = 4, ans = 10
……
filter()
将一个单参数函数作用到一个序列上,并把返回值为 True 的对象组成一个新的 filter 对象
1 | seq = ['foo', 'x41', '?!', '***'] |
range()
1 | range(start, end, step) |
start默认为0,step默认为1,为左闭右开区间
zip()
把多个可迭代对象压缩到一起
1 | list(zip('abcd', [1, 2, 3])) |