生成一个 5*5 的 100 以内二维整数列表,要求计算二维列表所有四周元素的累加和, 并将二维列表和累加和写入文件 out.txt
时间: 2024-03-22 14:42:18 浏览: 60
好的,我来帮您解决这个问题。
以下是 Python 代码实现:
```python
import random
# 生成二维列表
matrix = [[random.randint(0, 100) for j in range(5)] for i in range(5)]
# 计算四周元素的累加和
total = sum(matrix[0]) + sum(matrix[-1]) + sum(row[0] for row in matrix) + sum(row[-1] for row in matrix) - 2 * (matrix[0][0] + matrix[0][-1] + matrix[-1][0] + matrix[-1][-1])
# 将二维列表和累加和写入文件 out.txt
with open('out.txt', 'w') as f:
f.write('二维列表:\n')
for row in matrix:
f.write(' '.join(str(elem) for elem in row) + '\n')
f.write('\n四周元素的累加和:\n')
f.write(str(total))
```
代码解释:
1. 通过列表推导式生成 5x5 的二维列表,每个元素都是 0~100 之间的随机整数。
2. 计算二维列表四周元素的累加和。这里使用了一些 Python 的语法糖,如列表切片和生成器表达式。
3. 将二维列表和累加和写入文件 out.txt 中。使用 with 语句来打开文件,可以自动关闭文件,避免出现资源泄露等问题。
注意事项:
1. 代码中没有做输入检查,如需在实际应用中使用,建议添加输入检查,确保输入的数据符合要求。
2. 如果您不想使用随机数生成二维列表,可以手动输入数据或从文件中读取数据。
阅读全文