“回👋掏”。最近做东西,有点儿玩不转复杂数据类型,写篇博文再回顾下深、浅拷贝相关知识。深、浅的区分主要在对复杂数据类型进行操作的时候。
By the way:时间过得很快,十月了,之前定了个小目标:
一个月至少一篇文章产出
。2020年的 $ \frac{5}{6} $ 已经过去。很庆幸自己坚持了下来,学到了不少东西。实习期间其实有不少的文章主题的想法,但真正想动手写篇博文的时候,发现事情并没有想想中的那么简单,一个主题涉及到的知识点还是蛮多的,再加上实践经验的不足,有些东西很难写道点上,copy & paste 总是不太好的『努力提高文章质量,hhh~』。希望自己后续继续加油。
Serialization:Data Structure/Object –> Binary String
Deserialization:Binary String –> Data Structure/Object
Goals:Cross-platform Communication、Persistent Storage and More
pickle 仅可用于 Python,pickle所使用的数据流格式仅可用于 Python
pickle 模块可以将复杂对象转换为字节流,也可以将字节流转换为具有相同内部结构的对象。
可被pickling和unpickling的对象:https://docs.python.org/zh-cn/3/library/pickle.html#what-can-be-pickled-and-unpickled
pickle提供了优秀的方法方便我们对对象进行pickling(封存)和unpickling(解封)
1 | # -*- coding: utf-8 -*- |
个人简单记录下
virtualenv是一个用于创建”隔离的ython运行环境”的工具,Docs
pip是Python的包管理工具,Docs
1 | # 安装virtualenv |
URL:https://nbviewer.jupyter.org/
结合Github的示例用法:https://nbviewer.jupyter.org/github/ + <用户名
或者用户名/存放ipynb文件的仓库
或者Gist ID
>
例如:https://nbviewer.jupyter.org/github/yeshan333/JupyterNotebook-Show-sample
https://docs.python.org/zh-cn/3.7/library/pdb.html#module-pdb
1 | python -m pdb test.py |
import pdb
、pdb.set_trace()
再运行代码进行调试比如进行文件操作的时候我们可能会忘记操作后关闭文件(file close),使用with open(filename, mode) as f
不需要我们手动关闭文件,不管处理文件中是否有异常出现,都能保证with语句执行完毕后关闭文件,有效防止资源泄露,安全多了。
1 | # with 语句的一般格式 |
在执行with-body会调用上下文管理器的__enter__方法,执行完with-body之后再调用上下文管理器的__exit__方法
看到吐血 (´ཀ`」 ∠)
1 | class Person(object): |
1 / 3