初识Python之面向对象编程之使用类和实例

关注公众号:Python互助小组
一起学习,共同进步
里面有不定期的赠书活动哦
公众号:Python互助小组 或者搜索python_group

我们先来做一个简单的升学小程序:

当然这个程序还是有很多漏洞的,这是花了十分钟写出来的一个很简单的功能实现,主要是为了演示使用类和实例

class Student():

    def __init__(self, name, age, classes, grade):
        self.name = name
        self.age = age
        self.classes = classes
        self.grade = grade

    # 升学
    def up(self):
        print('恭喜你', self.name, '你上学期的分数为', self.grade, '你可以升学了')
        print('姓名:', self.name)
        print('年龄:', self.age)
        print('年级:', self.classes)
        print('成绩:', self.grade)

    # 考试
    def test(self):
        if self.grade < 60:
            print('分数小于60分, 不能升学')
            print('姓名:', self.name)
            print('年龄:', self.age)
            print('年级:', self.classes)
            print('成绩:', self.grade)
        else:
            if self.classes >= 6:
                # 通过方法改变属性的值
                self.classes = '初中'
            else:
                # 通过方法对属性进行递增
                self.classes += 1
            # 调用方法
            self.up()

    def check_classes(self, classes):
        if classes > 6 or classes <= 0:
            classes = eval(input('不在统计范围内,请重新输入, 你现在几年级'))
            self.check_classes(classes)
        return classes

    def check_grade(self, grade):
        if grade > 120 or grade < 0:
            grade = eval(input('不在统计范围内,请重新输入, 你考了多少分'))
            self.check_grade(grade)
        return grade


while True:
    print('简单的升学小程序, 输入名字为exit 则退出, 否则会一直进行')
    a = input('你叫什么名字:')
    if a == 'exit':
        print('拜拜')
        break
    b = input('今年多大了:')
    try:
        c = eval(input('你现在几年级:'))
        d = eval(input('你考了多少分?'))
        student = Student(a, b, c, d)
        c = student.check_classes(c)
        d = student.check_grade(d)
        student.test()
    except Exception:
        print('输入类型错误,请重新输入')

感兴趣的可以copy下去到编译器上运行

简单的升学小程序, 输入名字为exit 则退出, 否则会一直进行
你叫什么名字:hcf
今年多大了:12
你现在几年级:4
你考了多少分?50
分数小于60分, 不能升学
姓名: hcf
年龄: 12
年级: 4
成绩: 50
简单的升学小程序, 输入名字为exit 则退出, 否则会一直进行
你叫什么名字:hcf
今年多大了:12
你现在几年级:4
你考了多少分?66
恭喜你 hcf 你上学期的分数为 66 你可以升学了
姓名: hcf
年龄: 12
年级: 5
成绩: 66
简单的升学小程序, 输入名字为exit 则退出, 否则会一直进行
你叫什么名字:hcf
今年多大了:12
你现在几年级:5
你考了多少分?78
恭喜你 hcf 你上学期的分数为 78 你可以升学了
姓名: hcf
年龄: 12
年级: 6
成绩: 78
简单的升学小程序, 输入名字为exit 则退出, 否则会一直进行
你叫什么名字:hcf
今年多大了:12
你现在几年级:6
你考了多少分?90
恭喜你 hcf 你上学期的分数为 90 你可以升学了
姓名: hcf
年龄: 12
年级: 初中
成绩: 90
简单的升学小程序, 输入名字为exit 则退出, 否则会一直进行
你叫什么名字:exit
拜拜

大致的运行情况如下

这里面演示了调用方法,在方法中修改属性的值,直接修改属性的值,通过方法对属性进行递增等


关注公众号:Python互助小组
一起学习,共同进步
里面有不定期的赠书活动哦
公众号:Python互助小组 或者搜索python_group

你可能感兴趣的:(Python基础)