Python类的编程题入门题目

你好,我是悦创。

1. 定义一个"狗"的类

题目描述

定义一个名为Dog的类,其中:

  • Dog类应有一个name(名字)属性和一个age(年龄)属性。
  • Dog类应有一个方法叫做bark,当调用这个方法时,它应返回"Woof!"
  • Dog类应有一个方法叫做get_human_age,它应返回狗的年龄乘以7(因为一般认为1年的狗相当于7岁的人)。

示例代码

python 复制代码
class Dog:
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def bark(self):
        return "Woof!"

    def get_human_age(self):
        return self.age * 7

dog = Dog("Buddy", 3)
print(dog.bark())           # 输出: Woof!
print(dog.get_human_age())  # 输出: 21

2. 创建一个"银行账户"的类

题目描述

定义一个名为BankAccount的类,其中:

  • BankAccount类应有一个balance(余额)属性,初始化时默认为0。
  • BankAccount类应有一个方法叫做deposit,可以存款。
  • BankAccount类还应有一个方法叫做withdraw,可以取款。如果取款金额大于余额,则应返回"Insufficient funds!"

示例代码

python 复制代码
class BankAccount:
    def __init__(self, balance=0):
        self.balance = balance

    def deposit(self, amount):
        self.balance += amount

    def withdraw(self, amount):
        if amount > self.balance:
            return "Insufficient funds!"
        else:
            self.balance -= amount

account = BankAccount()
account.deposit(100)
print(account.balance)       # 输出: 100
print(account.withdraw(120)) # 输出: Insufficient funds!

3. 创建一个"学生"的类

题目描述

定义一个名为Student的类,其中:

  • Student类应有name(名字)属性和grades(成绩)属性,成绩是一个列表。
  • Student类应有一个方法叫做average_grade,返回该学生的平均成绩。

示例代码

python 复制代码
class Student:
    def __init__(self, name, grades=[]):
        self.name = name
        self.grades = grades

    def average_grade(self):
        return sum(self.grades) / len(self.grades)

student = Student("Alice", [90, 85, 88, 95])
print(student.average_grade())  # 输出: 89.5
相关推荐
zzzzzz3101 小时前
当产品经理说这个很简单:我用Python自动化处理奇葩需求的实战指南
python·pycharm·产品经理
雪隐2 小时前
个人电脑玩AI-06让5060 Ti给你打工——不光能画画,Qwen3-TTS还能学人说话,连我老板都信了!
人工智能·后端·python
兵慌码乱13 小时前
面向桌面端的资产管理系统分层架构设计与核心模块实现
python·系统架构·sqlite·pyqt5·数据库设计·桌面应用开发·mvc架构
hboot15 小时前
AI工程师第三课 - 机器学习基础
python·scikit-learn·kaggle
顾林海20 小时前
Agent入门阶段-编程基础-Python:流程控制
python·agent·ai编程
呱呱复呱呱1 天前
Django CBV 源码解读:一个请求是怎么找到你的 get() 方法的
python·django
曲幽1 天前
刚部署的 LibreTranslate 频频翻车?我掏出了 20 年前的 StarDict 词典,用 FastAPI 搭了个本地词典翻译 API
python·fastapi·web·translate·goldendict·libretranslate·stardict·pystardict
荣码1 天前
用Streamlit给AI应用套个界面,10行代码出Web页面
java·python
兵慌码乱2 天前
基于Python+PyQt5+SQLite的药房管理系统实现:事务一致性与界面解耦全流程解析
python·sqlite·信号与槽·pyqt5·数据库设计·桌面应用开发·事务处理
金銀銅鐵2 天前
[Python] 体验用欧几里得算法计算最大公约数的过程
python·数学