python-22 eval json pickle shelve 之间差别
1.eval:可以转化字符串,字典,元组,列表等一般类型,不能转化类,函数
2.json:可以转化一般类型外,还可转化函数,可以在任何语言间转化,转化为字符串,可以写入文本,故这个较常用。 json.dumps() 后,人工可读。只要符合json规范,就可以直接dumps(),如文本中{"k":"v"}
3.pickle:可以转化一切,包括类,函数,但只能在python间转化,转化为字节,且pickle.dumps()之后的字符,人工不可读。
4.shelve:支持有限的数据类型,不能跨语言