[問題] python 新手求教 txt輸出問題

看板Python作者 (白色小雞)時間4年前 (2020/11/16 10:32), 4年前編輯推噓4(4011)
留言15則, 7人參與, 4年前最新討論串1/1
各位大大好! 我是剛接觸一個月的小新手,我想讓txt檔案裡的的字典拿出來使用 程式如下: txt檔案裏面是一個 {'p233':'p321'} poem = '' fin = open('relativity','rt') while True: line = fin.readline() if not line: break poem += line print (line) {'p233':'p321'} print (line[0]) 讀取的結果是 { 想要知道我要怎麼可以正常使用這個字典! 感謝大家 我希望是能變回 X = {'p233':'p321'} print (X['p233']) 'p321' -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.235.208.107 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1605493961.A.B5E.html

11/16 11:23, 4年前 , 1F
line[0] 是 '{'不是很合理嗎?
11/16 11:23, 1F

11/16 11:26, 4年前 , 2F
因該這樣問,我想讓那個字典可以繼續運用我該怎麼做?
11/16 11:26, 2F
※ 編輯: ck237 (111.235.208.107 臺灣), 11/16/2020 11:35:24

11/16 11:43, 4年前 , 3F
d = eval(X) d['p233']
11/16 11:43, 3F

11/16 11:43, 4年前 , 4F
X必須是python dictionary的字串表示形式
11/16 11:43, 4F

11/16 11:44, 4年前 , 5F
X = eval(line)
11/16 11:44, 5F

11/16 11:44, 4年前 , 6F
不然就是改用json或pickle存字典
11/16 11:44, 6F

11/16 13:01, 4年前 , 7F
沒有型別造成的誤認,本來是字典,存到txt變成字串,字
11/16 13:01, 7F

11/16 13:01, 4年前 , 8F
串的第0個(list[0])就是{,應該可以用像上面版友提到的
11/16 13:01, 8F

11/16 13:01, 4年前 , 9F
方式將文字轉成你原本要的字典,或用json格式會比較通
11/16 13:01, 9F

11/16 13:01, 4年前 , 10F
11/16 13:01, 10F

11/16 13:29, 4年前 , 11F

11/16 14:54, 4年前 , 12F
不過eval盡量不要用於未知字串 避免發生危險
11/16 14:54, 12F

11/16 16:21, 4年前 , 13F
謝謝各位大大,用Jason成功寫出來了!
11/16 16:21, 13F

11/16 19:27, 4年前 , 14F
先google
11/16 19:27, 14F

11/18 00:26, 4年前 , 15F
Jason 出來打球??
11/18 00:26, 15F
文章代碼(AID): #1ViUJ9jU (Python)
文章代碼(AID): #1ViUJ9jU (Python)