- 参考:
- 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/method def
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