- 博客(11)
- 收藏
- 关注
原创 python之类与继承总结
1.尽量用辅助类来维护程序的状态,而不要用字典和元组不要使用包含其他字典的字典,也不要使用过长的元组。 如果容器中包含简单而又不可变的数据,那么可以先使用 namedtuple(具名元组) 来表示,带稍后有需要时,再修改为完整的类。 保存内部状态的字典如果变得比较复杂,那就应该把这些代码拆解为多个辅助类。2.简单的接口应该接受函数,而不是类的实例defaultdict函数钩子(hook)函数...
2021-03-17 22:20:34 331 4
原创 python之函数总结
1.尽量用异常来表示特殊情况,而不要返回 None用 None 这个返回值来表示特殊意义的函数,很容易使调用者犯错,因为 None 和 0 以及空字符串之类的值,在表达式里都会评估为 False。函数在遇到特殊情况时,应该抛出异常,而不要返回 None 。调用者在看到该函数的文档中所描述的异常之后,应该就会编写相应的代码来处理它们了。def divide(a, b): try: return a / b except ZeroDivisionError as e
2021-03-09 22:18:40 625 4
原创 异常处理 try/except/else/finally
1.try/finally结构既要将异常向上传播,又要在异常发生时执行清理工作。常见用途之一:确保程序能够可靠的关闭文件句柄handle = open('filepath') # 可能发生IOErrortry: data = handle.read() # 可能发生UnicodeDecodeErrorfinally: handel.close() # 一定可以执行2.try/except结构3.try/except/else结构清晰的描绘出哪些异常
2021-03-07 16:53:58 2307 2
原创 zip()函数
用 zip() 函数同时遍历两个迭代器names = ['Cecilia', 'Lise', 'Marie']letters = [len(n) for n in names]longest_name = Nonemax_letters = 0for name, count in zip(names, letters): if count > maxletters: longest_name = name max_letters = count
2021-03-07 15:27:25 293 2
原创 random.randint(0, 1)
random.randint() 产生指定范围内的随机整数,包括边界。因为它会产生 0 或 1 随机,而数字 0 是 False 并且其他所有数字都是 True , 所以它会随机产生一个假值或真值。在Python中,空容器,空字符串None和数字0(整数0,float 0.0等)都是假值。...
2021-03-02 19:21:09 5880
原创 enumerate 函数
enumerate 函数提供了一种精简的写法,可以在遍历迭代器时获知每个元素的索引; 尽量用 enumerate 来改写那种将 range 与下标访问相结合的序列遍历代码; 可以给 enumerate 提供第二个参数,以指定开始计数时所用的值(默认为0)。 for i, name in enumerate(name_list, 1): print('%d:%s' % (i, name)) ...
2021-03-02 18:38:25 354
原创 列表推导(list comprehension)总结
1. 用列表推导来取代 map + filter 函数列表推导a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]even_squares = [x**2 for x in a if x % 2 == 0]print(even_squares)>>>[4, 16, 36, 64, 100]map + filter 函数alt = map(lambda x: x**2, filter(lambda x: x % 2 == 0, a))eve.
2021-03-02 16:47:40 225
原创 在单次切片操作内,不要同时指定 start, end 和 stride
将以字节形式存储的字符串反转:x = b'mongoose'y = x[::-1]print(y)>>>b'esoognom'这对字节串和 ASCII 字符有用,对已经编码成 UTF-8 字节串的 Unicode 字符无效。例子:a = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h']a[::2] # ['a', 'c', 'e', 'g']a[::-2] # ['b', 'd' 'f', 'h']a[2
2021-03-02 13:36:28 129
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人