python创建一个名为“大学生”的父类
时间: 2023-08-31 22:06:26 浏览: 56
以下是创建一个名为“大学生”的父类的Python代码示例:
```python
class CollegeStudent:
def __init__(self, name, age, major):
self.name = name
self.age = age
self.major = major
def study(self):
print(f"{self.name} is studying {self.major}.")
def sleep(self):
print(f"{self.name} is sleeping.")
def eat(self):
print(f"{self.name} is eating.")
```
在这个父类中,我们定义了三个方法:`study()`,`sleep()` 和 `eat()`,以及三个属性:`name`,`age` 和 `major`。这些方法可以被子类继承并实现自己的行为。
相关问题
用python实现创建一个名为“大学生”的父类,要求初始化“大学生”实例时,应输入姓名、性别、年龄、家乡省份、学校名称等成员变量;其中要体现出年龄、家乡省份与经验值应为私有变量,外部不能够访问,再创建三个 get 方法分别获取年龄、家乡省份与经验值信息。请给出代码并且给出一个使用示例
以下是实现题目要求的代码:
```python
class CollegeStudent:
def __init__(self, name, gender, age, hometown, school):
self.name = name
self.gender = gender
self.__age = age
self.__hometown = hometown
self.school = school
self.__experience = 0
def get_age(self):
return self.__age
def get_hometown(self):
return self.__hometown
def get_experience(self):
return self.__experience
```
使用示例:
```python
student = CollegeStudent("张三", "男", 20, "江苏", "清华大学")
print(student.name) # 输出:张三
print(student.get_age()) # 输出:20
print(student.get_hometown()) # 输出:江苏
print(student.school) # 输出:清华大学
student.__experience = 100 # 外部无法访问私有变量__experience
print(student.get_experience()) # 输出:0
```
1. 创建一个名为“大学生”的父类,要求: • 初始化“大学生”实例时,应输入姓名、性别、年龄、家乡省份、学校名称等成员变量; • 初始化一个经验值变量,设置为 0; • 其中,年龄、家乡省份与经验值应为私有变量,外部不能够访问; • 创建三个 get 方法分别获取年龄、家乡省份与经验值信息。 • 创建一个名为“上自习”的方法,其输入变量为上自习的地点 X,每次调用时,会打印“学生 某某在 X 上自习”,并使经验值+1。 2. 创建一个名为“重邮学生”的子类,继承“大学生”父类,要求: • 初始化“重邮学
生”实例时,应继承“大学生”父类的成员变量; • 新增一个学院的成员变量; • 重写“上自习”方法,在输出的信息中加上学院名称; • 创建一个名为“打卡”的方法,每次调用时,会打印“学生 某某打卡成功”,并使经验值+2。
代码实现如下:
```python
class CollegeStudent:
def __init__(self, name, gender, age, hometown, school, college):
self.name = name
self.gender = gender
self._age = age
self._hometown = hometown
self.school = school
self._experience = 0
self.college = college
def get_age(self):
return self._age
def get_hometown(self):
return self._hometown
def get_experience(self):
return self._experience
def study(self, location):
print(f"学生 {self.name} 在 {location} 上自习")
self._experience += 1
class CQUStudent(CollegeStudent):
def __init__(self, name, gender, age, hometown, school, college):
super().__init__(name, gender, age, hometown, school, college)
def study(self, location):
print(f"学生 {self.name} 在 {location} 上自习,所在学院为{self.college}")
self._experience += 1
def check_in(self):
print(f"学生 {self.name} 打卡成功")
self._experience += 2
```
我们可以创建一个 CQUStudent 的实例,并调用其方法:
```python
>>> student = CQUStudent("张三", "男", 20, "四川", "重庆大学", "计算机科学与技术学院")
>>> student.study("图书馆")
学生 张三 在 图书馆 上自习,所在学院为计算机科学与技术学院
>>> student.check_in()
学生 张三 打卡成功
>>> student.get_experience()
3
```
以上就是该类的实现,其中 CQUStudent 继承了 CollegeStudent 的所有属性和方法,并重写了 study 方法和新增了 check_in 方法。