python dict保存到文件_将dict写入txt文件并将其读回?

我正试着把字典写成一个txt文件。然后用raw_input键入键来读取dict值。我觉得我只是错过了一步,但我已经找了一段时间了。

我知道这个错误File "name.py", line 24, in reading

print whip[name]

TypeError: string indices must be integers, not str

我的代码:#!/usr/bin/env python

from sys import exit

class Person(object):

def __init__(self):

self.name = ""

self.address = ""

self.phone = ""

self.age = ""

self.whip = {}

def writing(self):

self.whip[p.name] = p.age, p.address, p.phone

target = open('deed.txt', 'a')

target.write(str(self.whip))

print self.whip

def reading(self):

self.whip = open('deed.txt', 'r').read()

name = raw_input("> ")

if name in self.whip:

print self.whip[name]

p = Person()

while True:

print "Type:\n\t*read to read data base\n\t*write to write to data base\n\t*exit to exit"

action = raw_input("\n> ")

if "write" in action:

p.name = raw_input("Name?\n> ")

p.phone = raw_input("Phone Number?\n> ")

p.age = raw_input("Age?\n> ")

p.address = raw_input("Address?\n>")

p.writing()

elif "read" in action:

p.reading()

elif "exit" in action:

exit(0)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值