面向对象实现:在另一个文件中打印出本文件中写入的程序结果(字典)

class Student:
    count=0
    def __init__(self,name,age,address):
        self.name=name
        self.age=age
        self.address=address
        Student.count+=1
    def pt(self):
        print(self.name,self.age,self.address)
f=open('xinde.txt','w',encoding='utf-8')
zs=Student('张三',18,'北京')
zd=dict(name=zs.name,age=zs.age,address=zs.address)
f.write(str(Student.count))
f.write(':')
f.write(str(zd))
f.write('\n')

ls=Student('李四',18,'合肥')
zd=dict(name=ls.name,age=ls.age,address=ls.address)
f.write(str(Student.count))
f.write(':')
f.write(str(zd))
f.write('\n')

ww=Student('王五',18,'南京')
zd=dict(name=ww.name,age=ww.age,address=ww.address)
f.write(str(Student.count))
f.write(':')
f.write(str(zd))
f.write('\n')
f.close()

f=open('xinde.txt','r',encoding='utf-8')
line=f.readline()
print(line)
obj=[]
while len(line)>0:
    zd=eval(line[2:].strip('\n'))
    print(zd)
    x=Student(zd['name'],zd['age'],'中国'+zd['address'])
    obj.append(x)
    line=f.readline()
for i in obj:
    i.pt()
f.close()

猜你喜欢

转载自blog.csdn.net/yuanzhen1/article/details/88045938
今日推荐