python模拟小球在容器中的堆积结构
时间: 2024-05-09 18:19:01 浏览: 8
以下是一个简单的Python程序,用来模拟小球在容器中的堆积结构:
```python
import random
class Ball:
def __init__(self, color):
self.color = color
class Container:
def __init__(self, capacity):
self.capacity = capacity
self.balls = []
def add_ball(self, ball):
if len(self.balls) < self.capacity:
self.balls.append(ball)
else:
print("Container is full")
def remove_ball(self):
if len(self.balls) > 0:
ball = self.balls.pop()
print("Removing a {} ball".format(ball.color))
else:
print("Container is empty")
def display_balls(self):
if len(self.balls) > 0:
print("Balls in container:")
for ball in self.balls:
print(ball.color)
else:
print("Container is empty")
# create a container with a capacity of 5
container = Container(5)
# add some balls to the container
colors = ["red", "blue", "green", "yellow", "purple"]
for i in range(10):
color = random.choice(colors)
ball = Ball(color)
container.add_ball(ball)
# display the balls in the container
container.display_balls()
# remove some balls from the container
for i in range(3):
container.remove_ball()
# display the remaining balls in the container
container.display_balls()
```
该程序定义了两个类:Ball和Container。Ball类表示小球,包含一个颜色属性。Container类表示容器,包含一个容量属性和一个小球列表。它还定义了三个方法:add_ball(添加小球到容器中)、remove_ball(从容器中移除一个小球)、display_balls(显示容器中的小球)。
在主程序中,我们创建了一个容器,并向其中添加了一些小球。然后,我们显示了容器中的小球,并从容器中移除了一些小球。最后,我们再次显示容器中的小球。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)