Python进阶-pickle/eval/exec
Posted 下划线是我
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python进阶-pickle/eval/exec相关的知识,希望对你有一定的参考价值。
- 参考:
- eval/exec/compile的区别:https://stackoverflow.com/questions/2220699/whats-the-difference-between-eval-exec-and-compile-in-python
- pickle的使用: https://pythontips.com/2013/08/02/what-is-pickle-in-python/
- 背景
- 之前用打印到文件,逐行读出用eval转换格式。现在用pickle可直接实现。
- pickle_eval_exec的区别:
- pickle: dump到file, 从file中load
- eval: e
val
accepts only a single expression,eval
returns the value of the given expression。 - exec:
exec
can take a code block that has Python statements: loops,try: except:
,class
and function/methoddef
initions and so on. return None.
- Pickle的使用:(pickle.load(), pickle.dump())
import pickle a = [‘test value‘,‘test value 2‘,‘test value 3‘] a [‘test value‘,‘test value 2‘,‘test value 3‘] file_Name = "testfile" # open the file for writing fileObject = open(file_Name,‘wb‘) # this writes the object a to the # file named ‘testfile‘ pickle.dump(a,fileObject) # here we close the fileObject fileObject.close() # we open the file for reading fileObject = open(file_Name,‘r‘) # load the object from the file into var b b = pickle.load(fileObject) b [‘test value‘,‘test value 2‘,‘test value 3‘] a==b True
以上是关于Python进阶-pickle/eval/exec的主要内容,如果未能解决你的问题,请参考以下文章