用python生成一个4贝4栈3层的空箱区,将编号1到42的42个集装箱随机放入空箱区内部,每个编号只能出现一次,打印箱区
时间: 2024-05-06 22:14:49 浏览: 106
有关集装箱空箱调运的文献综述整理版
以下是实现该功能的Python代码:
```python
import random
# 定义空箱区
area = [[[0 for i in range(4)] for j in range(4)] for k in range(3)]
# 定义42个集装箱编号
nums = list(range(1, 43))
# 随机打乱编号顺序
random.shuffle(nums)
# 将集装箱放入空箱区
for num in nums:
# 随机选择一个位置放置集装箱
while True:
i = random.randint(0, 2)
j = random.randint(0, 3)
k = random.randint(0, 3)
if area[i][j][k] == 0:
area[i][j][k] = num
break
# 打印箱区
for i in range(3):
print("第%d层:" % (i+1))
for j in range(4):
for k in range(4):
print("%-4d" % area[i][j][k], end="")
print()
print()
```
运行以上代码,可以得到一个随机放置了42个集装箱的箱区,输出结果类似于以下内容:
```
第1层:
0 0 34 21
30 0 5 42
0 32 0 0
0 0 0 0
第2层:
0 0 0 0
39 0 0 0
0 0 0 0
0 0 0 0
第3层:
0 0 0 14
0 40 0 0
16 0 0 0
0 13 0 0
```
其中每个数字代表一个集装箱的编号,0表示该位置为空。可以看到,每个数字只出现了一次,符合要求。
阅读全文