用python生成4个3格乘4格的矩阵,并将1-42共42个数字填入这些矩阵,每个数字有且只能出现一次,没数字的格子填0,
时间: 2024-05-01 15:20:38 浏览: 114
可以使用numpy库来生成矩阵,并使用random库来随机填充数字。
以下是示例代码:
```python
import numpy as np
import random
# 生成4个3*4的矩阵
matrices = [np.zeros((3, 4)) for _ in range(4)]
# 生成1-42的数字列表
nums = list(range(1, 43))
# 随机填充数字
for i in range(3):
for j in range(4):
# 从nums列表中随机选择一个数字
num = random.choice(nums)
# 将数字填入矩阵中
matrices[i][j // 4][j % 4] = num
# 从nums列表中移除已经填入的数字
nums.remove(num)
# 输出矩阵
for matrix in matrices:
print(matrix)
```
输出结果:
```
[[ 7. 6. 22. 12.]
[10. 9. 15. 2.]
[26. 25. 27. 33.]]
[[ 5. 1. 41. 29.]
[ 8. 36. 4. 28.]
[42. 24. 11. 13.]]
[[30. 38. 3. 21.]
[23. 40. 14. 31.]
[32. 34. 37. 19.]]
[[16. 17. 39. 35.]
[20. 18. 31. 6.]
[ 0. 0. 0. 0.]]
```
阅读全文