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
相关推荐
VidDown1 小时前
24fps 转 25fps 不只是改个数字:帧率转换、PAL/NTSC 与音频补偿
python·网络协议·音视频·视频编解码·视频
死磕音视频3 小时前
让小模型做选择题:限定候选项并读取 logits 概率的入门实践(附 Python 代码)
开发语言·python·大模型·文本分类·transformers
凤山老林3 小时前
Spring Boot 接入国密 SM2/SM3/SM4 的一些实践记录
spring boot·后端·python
pride.li5 小时前
第03章 Python 教程-基础语法:注释与变量
服务器·前端·后端·python·算法·计算机视觉
databook5 小时前
用 Pydantic AI 从零搭建一个能干活的 AI Agent
人工智能·python
顽疲5 小时前
Java vue 养老系统源码详解:月账单 care_month_bill 与 Quartz 扣费 Job 实践
java·开发语言·vue.js·vue养老·springboot养老·java养老
康小旺5 小时前
把 markitdown 做成 Windows 桌面版:拖进文档就出 Markdown,附 233MB→64MB 打包裁剪全过程
python
Wang's Blog6 小时前
Java 项目实战: 交友项目 - 安装开发工具与环境准备
java·开发语言·交友
启观川6 小时前
数据结构与算法-第 3 章 常用算法-贪心算法
数据结构·笔记·python·算法·贪心算法
南笙北梦6 小时前
本地开源大模型多轮对话显存泄漏排查与修复实录
python