今天下午python考试上机题

1创建一一个动物类,私有数据成员姓名,性别, 年龄,公有的成员函数显示以上信息
2.创建10个动物类对象,存在一个列表中
3.将列表数据写入某个文件当中

下面是一个实现办法:
1、定义动物类,首先定义构造器,把传入的姓名,性别,年龄参数赋值分别给三个私域属性,然后定义三个公有成员函数,用于访问对象私域属性
2、创建10个动物类对象
3、用10个动物类对象初始化列表
4、用with函数以写模式打开一个文件,然后用for循环遍历列表,用文件对象把每一个动物对象的属性写入文件 ,程序正常执行完毕,应该会在代码相同目录下生成一个“animals.txt”的文本文件,里面存入了列表的数据。

参考链接:
python---私有属性_酷酷的锐_的博客-CSDN博客_python私有属性
python中成员函数与成员变量的公开与私有 - 美丽的名字 - 爱码网
Python对象类型之列表 - 知乎
Python使用with关键字操作文件_梦想画家的博客-CSDN博客_python用with打开文件
python中for循环遍历列表的几种方法 - 百度文库
Python 文件 write() 方法

代码如下:

class animal: #动物类

    #https://blog.csdn.net/m0_58797559/article/details/124234364
    #http://c.biancheng.net/view/2265.html
    #定义构造器
    def  __init__(self, name,sex,age):
        self.__name=name
        self.__sex=sex
        self.__age=age

    #https://www.likecs.com/show-223215.html
    #访问三个私域属性的公有成员函数
    def showName(self):
        return self.__name
    def showSex(self):
        return self.__sex
    def showAge(self):
        return self.__age
        


#创建10个动物类对象
an1=animal("飞天1号","雄性",1)
an2=animal("飞天2号","雄性",2)
an3=animal("飞天3号","雄性",3)
an4=animal("飞天4号","雄性",4)
an5=animal("飞天5号","雄性",5)
an6=animal("兰花6号","雌性",6)
an7=animal("兰花7号","雌性",7)
an8=animal("兰花8号","雌性",8)
an9=animal("兰花9号","雌性",9)
an10=animal("兰花10号","雌性",10)

#https://zhuanlan.zhihu.com/p/36369350
#把10个动物类对象存入列表
ans=[an1,an2,an3,an4,an5,an6,an7,an8,an9,an10]


#https://blog.csdn.net/neweastsun/article/details/125052147
#用with函数打开文件
with open ("animals.txt","w") as file:
#https://wenku.baidu.com/view/9096b04b021ca300a6c30c22590102020740f299.html
    for a in ans: #用for循环访问列表
        #https://www.w3school.com.cn/python/ref_file_write.asp
        file.write(a.showName()+" "+a.showSex()+" "+str(a.showAge())+" ") #调用每个对象的访问私域属性的函数把列表数据写入文件




img