118、定义一个 Continent 类,其构造函数( init 方法)有三个参数:一个大陆、它的名称以及一个国家对象列表。
以下是定义 Continent 类及其构造函数的 Python 代码示例:
class Continent:
def __init__(self, continent, name, countries):
self.continent = continent
self.name = name
self.countries = countries
119、在 Continent 类中,定义一个名为 total_population 的方法,该方法返回该大陆上所有国家的人口总和。假设存在一个 Country 类,该类有 population 属性用于表示国家的人口。
以下是实现该方法的示例代码:
class Continent:
def __init__(self, name, countries):
self.name = name
self.countries = countries
def total_population(self):
return sum(country.population for country in self.countries)
上述代码定义了 Continent 类的 total_population 方法,通过遍历该大陆的国家列表并累加每个国家的人口来计算人口总和。
120、在Continent类中,定义一个名为__str__的方法,该方法以如下所示的格式返回该大陆的字符串表示形式:北美洲 加拿大人口为34482779,面积为9984670平方公里。美利坚合众国人口为313914040,面积为9826675平方公里。墨西哥人口为112336538,面积为1943950平方公里。
在 Continent 类中定义 __str__ 方法,可按以下思路实现:
- 首先返回大陆名称
- 然后遍历该大陆包含的国家列表
- 将每个国家的人口和面积信息按指定格式添加到字符串中
示例代码如下:
class Continent:
def __init__(self, name, countries):
self.name = name
self.countries = countries
def __str__(self):
result = self.name + ' '
for country in self.countries:
result += f'{country.name}人口为{country.population},面积为{country.area}平方公里。'
return result
上述代码假设 Country 类已经正确定义,且包含 name 、 population 和 area 属性。
121、在 Student 类中,编写一个 __str__ 方法,该方法包含所有 Member 类的信息,此外还包括学生编号、已修课程列表和当前课程列表。假设 Member 类有 name 、 address 、 email 属性, Student 类继承自 Member 类,且有 student_number 、 courses_taken 、 courses_taking 属性。
class Member:
def __init__(self, name: str, address: str, email: str) -> None:
self.name = name
self.address = address
self.email = email
def __str__(self) -> str:
return '{}{}{}'.format(self.name, self.address, self.email)
class Student(Member):
def __init__(self, name: str, address: str, email: str, student_num: str) -> None:
super().__init__(name, address, email)
self.student_number = student_num
self.courses_taken = []
self.
Python面向对象与测试实践

最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



