मैं एक txt फ़ाइल में एक शब्दकोश लिखने की कोशिश कर रहा हूं। फिर कुंजी टाइप करके प्रमुख मान पढ़ें raw_input। मुझे लगता है कि मैं सिर्फ एक कदम याद कर रहा हूं, लेकिन मैं अभी कुछ समय के लिए देख रहा हूं।
मुझे यह त्रुटि मिलती है
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)
name 'p' is not defined, p व्यक्ति वर्ग का उदाहरण होना चाहिए