.txt 파일에 사전을 쓰려고 시도하는 중. 동일한 파일에서 다시 읽으려고합니다.Python : 파일에 사전 쓰기 및 읽기
book = {'key1':'1','key2':'2'}
pfile = open("testfile.txt", "w+")
pfile.write("%s" % book)
pfile.close()
k1 = book['key1']
k2 = book['key2']
print(k1)
print(k2)
rfile = open("testfile.txt", "r")
rbook = rfile.read()
k1 = rbook['key1']
k2 = rbook['key2']
print(k1)
print(k2)
을하지만 난이 평을 실행하려고 할 때 반환합니다 :
1
2
Traceback (most recent call last): File "sotest.py", line 16, in <module>
k1b = rbook['key1']
TypeError: string indices must be integers, not str
을 나는 방법에 의해 맥에있어
이
내가 지금까지있어 무엇인가 .내가 말했듯이, 나는 그 파일에 사전을 쓰고, 그 같은 파일에서 사전을 읽고 다시 인쇄하기를 원한다.
누군가 내가 뭘 잘못하고 있다고 말할 수 있습니까? 어쩌면이 코드를 어떻게 만들 수 있는지에 대한 예를 들어 주시겠습니까?
[shelve] (https://docs.python.org/3/library/shelve.html)를 사용하고 있지 않습니다. – vaultah
또는 [pickle] (https://docs.python.org/2/library/pickle.html). –
오우, 오케이, 실제로 그 두 가지에 대해 읽었습니다. 코드 중 하나를 사용하는 방법에 대한 예를 들어 주시겠습니까? @abc – Viva