如果你有一個字符串,你可以使用ast.literal_eval把它放回Python數據結構:
>>> s="['myminus', 'IBM', 'Low', 'myplus', 'IBM', 'Close', 'WMT', 'Low']"
>>> import ast
>>> ast.literal_eval(s)
['myminus', 'IBM', 'Low', 'myplus', 'IBM', 'Close', 'WMT', 'Low']
你可以還可以使用類似json或pickle的東西來將Python數據序列化到文件或從文件中進行序列化。
這裏是JSON:
>>> li=['myminus', 'IBM', 'Low', 'myplus', 'IBM', 'Close', 'WMT', 'Low']
>>>
>>> import json
>>> json.dumps(li)
'["myminus", "IBM", "Low", "myplus", "IBM", "Close", "WMT", "Low"]'
>>> s=json.dumps(li)
>>> li2=json.loads(s)
>>> li2
[u'myminus', u'IBM', u'Low', u'myplus', u'IBM', u'Close', u'WMT', u'Low']
味酸:
>>> import pickle
>>> s=pickle.dumps(li)
>>> s
"(lp0\nS'myminus'\np1\naS'IBM'\np2\naS'Low'\np3\naS'myplus'\np4\nag2\naS'Close'\np5\naS'WMT'\np6\nag3\na."
>>> pickle.loads(s)
['myminus', 'IBM', 'Low', 'myplus', 'IBM', 'Close', 'WMT', 'Low']
最後,如果這是你的數據的全部,你可以只保存和使用爲csv恢復了Python csv module:
import csv
li=['myminus', 'IBM', 'Low', 'myplus', 'IBM', 'Close', 'WMT', 'Low']
with open('/tmp/calc.csv', 'w') as fout:
writer=csv.writer(fout)
writer.writerow(li)
with open('/tmp/calc.csv', 'r') as fin:
reader=csv.reader(fin)
data=next(reader)
>>> data
['myminus', 'IBM', 'Low', 'myplus', 'IBM', 'Close', 'WMT', 'Low']
這是什麼語言? – mskfisher 2014-08-28 16:45:56
語言是Python 2.X. – b0bm00re 2014-08-28 17:11:09
Pickle或ast.literal_eval – dawg 2014-08-28 19:29:07