Python写list到文件:
f=open("courses","w")
for i in coursesInfo:
f.write(str(i)+"\n")
f.close()
写完之后是这样的,
['A', '2', '良好']
['B', '2', '优秀']
['CD', '2', '良好']
读取的时候,有没有什么简便的方法可以直接读成list呢?
1
sleeperqp 2015 年 7 月 18 日
文件格式有要求么?
没有的话可以把list当做一行输出 比如 A 2 良好 B 2 优秀这样 然后读成string后然后split 就可以得到list了 |
3
MasterYoda 2015 年 7 月 18 日
json
|
4
scream7 PRO 直接用dump呗
|
6
lingo233 2015 年 7 月 18 日
每行strip,然后eval?
|
7
wizardoz 2015 年 7 月 18 日 骚年,我看你需要的是JSON。
import json # 写 with open("courses",'w') as fp: json.dump(list(coursesInfo)) #读 with open("courses","r") as fp: coursesInfo = json.load(fp) |
8
lingo233 2015 年 7 月 18 日
忘了eval只对数字有效
|
9
lingo233 2015 年 7 月 18 日
看了下文档可以得
In [1]: eval("['A', '2', '良好']") Out[1]: ['A', '2', '良好'] |
10
clino 2015 年 7 月 18 日 via Android
还是json吧
|
11
bjjvvv 2015 年 7 月 18 日
可以保存的时候去掉list前后的 [ ] ,然后就可以当成一个csv文件来处理了
|
13
kenX 2015 年 7 月 19 日 via iPhone
写的时候
f.write('|'.join(i)) 读的时候split一下 |
14
ryd994 2015 年 7 月 19 日 via Android
pickle
如果要通用就json 不要自己再造轮子了 |
15
zerh925 2015 年 7 月 19 日
conetent = []
with open('filename', 'r') as f: whole = f.readlines() for line in whole: content.append(line.split(',') |
16
zerh925 2015 年 7 月 19 日
括回来
|
17
keakon 2015 年 7 月 19 日
如果你已经保存成那样了,用 literal_eval
>>> from ast import literal_eval >>> literal_eval("['a', 1, '蛤蛤']") ['a', 1, '\xe8\x9b\xa4\xe8\x9b\xa4'] |
18
kaneg 2015 年 7 月 22 日
Python 的json貌似不支持单引号
|