用类实现绘制国旗(参考:面向过程用函数实现程序)
时间: 2024-03-29 08:37:09 浏览: 63
好的,我可以为您演示用类实现绘制国旗的程序。以下是示例代码:
```python
class Flag:
def __init__(self, width, height):
self.width = width
self.height = height
def draw(self):
self.draw_background()
self.draw_stripe()
self.draw_star()
def draw_background(self):
print("Drawing background...")
# 绘制背景矩形
print("Rectangle: width={}, height={}, color=red".format(self.width, self.height))
def draw_stripe(self):
print("Drawing stripe...")
# 绘制黄色横条
stripe_height = self.height / 2
print("Rectangle: width={}, height={}, color=yellow".format(self.width, stripe_height))
def draw_star(self):
print("Drawing star...")
# 绘制五角星
star_size = min(self.width, self.height) / 10
print("Star: size={}, position=({}, {}), color=yellow".format(star_size, self.width/3, self.height/3))
# 创建国旗对象并绘制
flag = Flag(600, 400)
flag.draw()
```
这个程序中,我们定义了一个名为`Flag`的类,它有三个方法:`__init__`、`draw_background`、`draw_stripe`和`draw_star`,分别用于初始化国旗的宽度和高度、绘制背景、横条和五角星。
我们创建了一个`Flag`对象,并将它的宽度和高度设置为600和400。然后,我们调用`draw`方法来绘制国旗。`draw`方法会自动调用`draw_background`、`draw_stripe`和`draw_star`方法来完成绘制过程。
当我们运行程序时,它会输出以下内容:
```
Drawing background...
Rectangle: width=600, height=400, color=red
Drawing stripe...
Rectangle: width=600, height=200.0, color=yellow
Drawing star...
Star: size=40.0, position=(200.0, 133.33333333333334), color=yellow
```
这说明我们的程序已经成功地绘制出了一个红底黄色横条、带有五角星的国旗。
阅读全文