主要内容
复数,测试运算符 in,集合运算符,输出间隔符,排序与逆序,枚举与迭代 enumerate函数,map(),reduce(),filter(),range(),zip(). 学校python课,随便记一记,方便复习省的期末白给
复数
定义 1
x = 3 + 4j
1
abs(x)
1
2x.imag
x.real1
x.conjugate()
1
2
33 in [1,2,3]
5 in range(1, 10, 1)
'abc' in 'abcdefg'
集合运算符
1 | {1,2,3} | {3,4,5} #并 |
输出间隔符
- \(sep\)之前为输出内容
- $sep = $用于调整间隔符,默认为空格
- $end = $为输出完数据之后再输出什么
排序与逆序
打乱 1
2
3x = list(range(11))
import random
random.shuffle(x)1
2sorted(x, key = lambda item: len(str(item)), reverse = True)
reversed(x)
枚举与迭代 enumerate
\(enumerate()\)函数用来枚举可迭代对象中的元素 1
2
3
4
5
6
7
8
9
10
11list(enumerate('abcd'))
[(0, 'a'), (1, 'b'), (2, 'c'), (3, 'd')]
list(enumerate(['Python', 'Great']))
[(0, 'Python'), (1, 'Great')]
# 枚举字典中元素
list(enumerate({'a':97, 'b':98, 'c':99}.items()))
[(0, ('a', 97)), (1, ('b', 98)), (2, ('c', 99))]
# 枚举range对象中元素
for index, value in enumerate(range(10, 15)):
print((index, value), end = ' ')
(0, 10) (1, 11) (2, 12) (3, 13) (4, 14)
map()
\(map(func, index)\)把\(index\)中每个对象都进行一次\(func\)函数,然后把映射得到的对象作为结果
1 | list(map(str, range(5))) |
reduce()
把一个参数为\(2\)的函数累计迭代运算 1
2
3
4from functools import reduce
seq = list(range(1, 10))
reduce(lambda x, y: x + y, seq)
45
filter()
将一个单参数函数作用到一个序列上,并把返回值为\(True\)的对象组成一个新的\(filter\)对象
1 | seq = ['foo', 'x41', '?!', '***'] |
range()
1 | range(start, end, step) |
start默认为0,step默认为1,为左闭右开区间
zip()
把多个可迭代对象压缩到一起 1
2
3
4
5
6
7
8
9list(zip('abcd', [1, 2, 3]))
[('a', 1), ('b', 2), ('c', 3)]
list(zip('123', 'abc', ',.!'))
[('1', 'a', ','), ('2', 'b', '.'), ('3', 'c', '!')]
x = zip('abcd', '1234')
list(x)
[('a', '1'), ('b', '2'), ('c', '3'), ('d', '4')]
- 本文作者: 水蓝络合物
- 本文链接: https://miku39393939.github.io/2022/03/03/PythonCourse2/
- 版权声明: 本博客所有文章除特别声明外,均采用 MIT 许可协议。转载请注明出处!
