用Python设计一个Course(课程类),该类中包括numb er(编号)、name(名称)、teacher(任课教 师)、location(上课地点)共4个属性。其中loc ation是私有属性;另外还包括__init__()、sh owinfo(显示课程信息)共2个方法。设计完成后,创建Course类的对象显示课程的信息。
时间: 2023-05-29 18:04:37 浏览: 387
```python
class Course:
def __init__(self, number, name, teacher, location):
self.number = number
self.name = name
self.teacher = teacher
self.__location = location
def showinfo(self):
print("课程编号:", self.number)
print("课程名称:", self.name)
print("任课教师:", self.teacher)
print("上课地点:", self.__location)
course = Course("001", "Python基础课程", "张三", "教学楼101")
course.showinfo()
```
相关问题
1.定义一个名为AddClass的类,该类有add_func方法,实现a*num1+ numb2的运算;定义另一个名为SubClass的类,该类有sub_func方法,实现num1-b*numb2的运算。其中,num1和num2为从键盘上输入的任意两个数字,a与b分别为AddClass与SubClass的属性,且分别初始化为0.3和0.7。调用CalcClass类中的方法,分别实现add_func和sub_func中的运算,并将运算结果打印输出。要求从键盘中输入的字符非数字时,提示重新输入,并按以下两种方式实现上述功能。,要求python
以下是实现题目要求的代码:
```python
class AddClass:
def __init__(self, a=0.3):
self.a = a
def add_func(self, num1, num2):
return self.a * num1 + num2
class SubClass:
def __init__(self, b=0.7):
self.b = b
def sub_func(self, num1, num2):
return num1 - self.b * num2
class CalcClass:
def __init__(self):
self.add_obj = AddClass()
self.sub_obj = SubClass()
def calc(self):
while True:
try:
num1 = float(input("请输入第一个数字:"))
num2 = float(input("请输入第二个数字:"))
print("加法运算结果:", self.add_obj.add_func(num1, num2))
print("减法运算结果:", self.sub_obj.sub_func(num1, num2))
break
except ValueError:
print("输入错误,请重新输入数字!")
calc_obj = CalcClass()
calc_obj.calc()
```
首先定义了AddClass和SubClass两个类,分别实现加法和减法运算。在CalcClass类中,初始化了AddClass和SubClass对象,然后通过calc方法进行运算。
在calc方法中,使用while循环和try-except语句对用户输入进行判断,如果输入的不是数字,则提示用户重新输入。如果输入的是数字,则调用AddClass和SubClass的方法进行运算,并将结果打印输出。最后使用break语句结束循环。
最后创建CalcClass对象并调用calc方法,实现题目要求的功能。
1.定义一个名为AddClass的类,该类有add_func方法,实现anum1+ numb2的运算;定义另一个名为SubClass的类,该类有sub_func方法,实现num1-bnumb2的运算。其中,num1和num2为从键盘上输入的任意两个数字,a与b分别为AddClass与SubClass的属性,且分别初始化为0.3和0.7。调用CalcClass类中的方法,分别实现add_func和sub_func中的运算,并将运算结果打印输出。要求从键盘中输入的字符非数字时,提示重新输入,并按以下两种方式实现上述功能。,要求python,且(1)在创建类对象时不传递参数,在调用类对象方法时传递参数
代码如下:
```python
class AddClass:
def __init__(self):
self.a = 0.3
def add_func(self, num1, num2):
return num1 + num2 + self.a
class SubClass:
def __init__(self):
self.b = 0.7
def sub_func(self, num1, num2):
return num1 - num2 - self.b
class CalcClass:
def __init__(self):
self.add = AddClass()
self.sub = SubClass()
def calc_add(self, num1, num2):
return self.add.add_func(num1, num2)
def calc_sub(self, num1, num2):
return self.sub.sub_func(num1, num2)
calc = CalcClass()
while True:
try:
num1 = float(input("请输入第一个数字:"))
num2 = float(input("请输入第二个数字:"))
except ValueError:
print("输入有误,请重新输入!")
continue
else:
break
print("加法运算结果为:{}".format(calc.calc_add(num1, num2)))
print("减法运算结果为:{}".format(calc.calc_sub(num1, num2)))
```
上述代码中,定义了一个AddClass类和一个SubClass类,分别实现加法运算和减法运算。在CalcClass类中,将AddClass和SubClass类实例化,并定义calc_add和calc_sub两个方法,分别调用AddClass和SubClass中的方法。
在主程序中,通过try-except语句判断输入的字符是否为数字,如果不是,则提示重新输入。最后输出加法运算和减法运算的结果。
阅读全文