版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/mikkles/article/details/82801331
- 推导式 comprehension
- 异常处理 try-except-else-finally
- 深浅拷贝
- 迭代器
推导式
- 列表推导式
- [x for x in range(10) if X % 2 == 0]
- 集合推导式
- {x for x in range(10) if X % 2 == 0}
- 字典推导式
- {x: x**2 for x in range(10) if x % 2 == 0}
- 生成器表达式
- (x for x in range(10) if x % 2 == 0)
异常处理
- Exception 常规错误父类
- BaseException 内置错误的父类
- tr-except
try: 测试执行代码... except Exception: 异常处理流程... else: ... finally: ...
- 自定义异常 ?
深浅拷贝
b=100
a=b
此时的赋值只是将变量a和b的指向到了存储100的地址
当a为列表时,更改a的值会同时更改b的值,具体原因待明确,应该和list的实现有关
copy()只针对当前变量的地址,针对变量内部的隐形指向地址不做更改
deepcopy()可以实现新地址的拷贝
from copy import copy,deepcopy
a=[1,["a","b"]]
b=a
c=copy(a)
d=deepcopy(a)
a.append(5)
a[1].append("c")
#a [1,['a','b','c'],5]
#b [1,['a','b','c'],5]
#c [1,['a','b','c']]
#d [1,['a','b']]
迭代器
返回可迭代对象,用for循环迭代或者复制给list
- map()
- range()