Python语言系统学习18:作品——“养宠物的经历”

原文链接:https://blog.csdn.net/Venom__/article/details/103642794

一: 利用猫狗与人的年龄换算器和类的继承编写的“养宠物经历”

1、PyQt设计界面:

2、对象命名:

3、源程序:

# 系统包
import sys
from PyQt5 import QtCore, QtGui, QtWidgets
# 项目包
from Ui_MainWindow import Ui_MainWindow

class people:
    name = ""
    age = 0
    sex="女"
    hometown = "章丘"
    memories = ""

    def OutputName(self):
        strOutput = "我叫" + self.name
        return  strOutput  
 
    def OutputAge(self):
        strOutput = "今年已经" + self.age + "岁了"
        return  strOutput

    def OutputSex(self):
        if self.sex == "女":
            strOutput = "我先进行一下自我介绍,本人喜欢小动物,喜欢滑雪,旅行,唱歌,吃美食,喜欢记录一些美好的事情,不管事拍照,还是写日记,我比较喜欢直来直去,性格活泼开朗,对待事情严谨认真不轻言放弃的态度,把事情做到极致,很注重仪式感。"
        else:
            strOutput = "我是一个活泼开朗的男孩,我珍惜我生命中的每一分、每一秒"
        return  strOutput  

    def OutputHometown(self):
        strOutput = "家住在环境优美,历史悠久,人杰地灵,是“龙山文化”的发祥地,是李清照故居。在" + self.hometown
        return  strOutput
     
    def OutputMemories(self):
        strOutput = "在我开心但也是伤心,难忘莫过于我" + self.memories
        return  strOutput

    def OutputResume(self):
        strOutput = "    " + self.OutputName() + ","
        strOutput = strOutput + self.OutputAge() + "。"
        strOutput = strOutput + self.OutputSex() + "。"
        strOutput = strOutput + self.OutputHometown() + "。"
        strOutput = strOutput + self.OutputMemories() + "。"
        return strOutput 

class pet(people):
    petname = ""
    petage = ""
    appearance = ""
    character = ""
    happy =""
    words =""

    def OutputPetName(self):
        strOutput = "在我12岁的时候,爸爸送我一只猫,和一条狗。当时见到它们样子十分的可爱,根据他们的体貌特征分别给他们取名字,分别为" + self.petname
        return  strOutput  
 
    def OutputPetAge(self):
        strOutput = "当时的我懵懵懂懂却不知它们已经" + self.petage
        return  strOutput

    def OutputAppearance(self):
        strOutput = "团绒它有一身雪一般洁白的皮毛;一条又细又短的尾巴在一见到我就拼命地晃动;两只圆溜溜的大眼睛流露出柔和的目光,仔细一看还是个双眼皮,真是太优秀了;一对可爱的耳朵顶在它的头上,它的耳朵大多时候都是放松的,只有高度警惕的时候才是竖起来的;它会疑惑地歪着头看你,它会嘴里呜呜的发出声音浑身摆动,尾巴摇动很厉害的跟你做游戏。小花猫的脑袋圆圆的,顶着一对尖尖的小耳朵,那大大的绿眼睛瞪得像两盏小绿灯" + self.appearance
        return  strOutput
     
    def OutputCharacter(self):
        strOutput = "都说狗见到猫必然出事,可我不这么认为:自从养了它们没见过为争宠或者吃的所争执,它们俩的性格都十分" + self.character + "特别说一下团绒的懂事,无论是给它喂什么吃的,总是在我们离开后再吃,很绅士的一条乖狗狗呢!"
        return  strOutput

    def OutputHappy(self):
        strOutput = "最开心的事情就是" + self.happy
        return  strOutput

    def OutputWords(self):
        strOutput = "但是快乐的时光总是短暂的,随着一年一年的过去,你还没有觉得时间过去很久之后,它们都已经年龄很大了。它们也变得没有以前活泼了,团绒的嗓音没有之前那样洪亮,有些沙哑,我也知道它们的身体一天不如一天,狗是忠诚的,这一点我一直坚信,即使是这样,它仍然坚守在自己的岗位上。当它们离开我的时候,我真的特别难过好长时间。但是生离终究敌不过死别,死亡是霸道的,死亡将它带走了就再也回不来了,之后我就再也没有养过其他的猫和狗,即使是它们再可爱,在这里我还是想对他们说:“"  + self.words
        return  strOutput    

    def OutputResume(self):
        strOutput = "    " + self.OutputName() + ","
        strOutput = strOutput + self.OutputAge() + "。"
        strOutput = strOutput + self.OutputSex() + "。"
        strOutput = strOutput + self.OutputHometown() + "。"
        strOutput = strOutput + self.OutputMemories() + "。"
        strOutput = strOutput + self.OutputPetName() + ","
        strOutput = strOutput + self.OutputPetAge() + "。"
        strOutput = strOutput + self.OutputAppearance() + "。"
        strOutput = strOutput + self.OutputCharacter() + "。"
        strOutput = strOutput + self.OutputHappy() + "。"
        strOutput = strOutput + self.OutputWords() + "。"
        return strOutput

class CMainWindow(QtWidgets.QMainWindow, Ui_MainWindow):
    def __init__(self, parent = None):
        super(CMainWindow, self).__init__(parent)
        self.setupUi(self)

        # 主窗体设置
        self.show()

    def Dog(self):
        a = int(self.txtAgeNumber1.text())
        if 0<=a<=2:
            if a ==2:
                self.txtDogResult.setText("二十三岁") 
            if a== 1:
                self.txtDogResult.setText("十八岁")
            if a <=0:
                self.txtDogResult.setText("小于十八岁") 
        else:
            a = 23 + ( a - 2) *5
            self.txtDogResult.setText(str(a))

    def Cat(self):
        b = int(self.txtAgeNumber2.text())
        if 0<=b<=2:
            if b ==2:
                self.txtCatResult.setText("二十四岁") 
            if b== 1:
                self.txtCatResult.setText("十五岁")
            if b <=0:
                self.txtCatResult.setText("小于十五岁") 
        else:
            b = 24 + ( b - 2) *4
            self.txtCatResult.setText(str(b))

    def Generate(self):
        p = pet ()
        p.name = self.txtName.text()
        p.age = self.txtAge.text()
        p.sex= self.txtSex.text()
        p.hometown = self.txtHometown.text()
        p.memories = self.txtMemories.text() 
        p.petname= self.txtPetName.text()
        p.petage = self.txtPetAge.text()
        p.appearance = self.txtAppearance.text()
        p.character= self.txtCharacter.text()
        p.happy = self.txtHappy.text()
        p.words = self.txtWords.text()
        self.txtResume.setText(p.OutputResume()) 

二、注解:

1:

2:Python Class的基础用法类(Class):用来描述具有相同的属性和方法的对象的 集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。

3:def关键字可以为类定义一个方法,与一般的函数定义不同,类方法必须包含参数self,且为第一个参数。

4:def函数名 :说这个函数是受保护的函数,只有类本身和其子类才能调用。

5:

6:继承的作用是

1)提高代码的重用性。

2)提高程序的扩展性。

7:宠物和人的年龄换算:定义小狗、小猫 2岁以前和人的固定年龄。小狗1岁相当于18,2岁相当于人的23岁。小于1岁定义小于18岁,小猫1岁相当于人的15岁,2岁相当于人的24岁。小于一岁定义小于15岁。当小狗小猫大于两岁是采用数学等差数列通项公式计算后面的年龄。
 

发布了413 篇原创文章 · 获赞 1104 · 访问量 81万+

猜你喜欢

转载自blog.csdn.net/qingwufeiyang12346/article/details/103778162