生成一个N*N的二维实数列表,将所有数据(保留两位小数)以文本形式写入文件:data1.txt,一行一个数据 要求:在主程序中输入:N,通过函数调用生成二维实数列表,并在主程序中将列表元素写入文件
时间: 2024-02-11 16:04:35 浏览: 66
写的二维数据代码
好的,您可以使用以下代码实现:
```python
def create_matrix(n):
import random
matrix = [[round(random.uniform(0, 100), 2) for _ in range(n)] for _ in range(n)]
return matrix
N = int(input("请输入N: "))
matrix = create_matrix(N)
with open("data1.txt", "w") as f:
for row in matrix:
for num in row:
f.write(str(num) + "\n")
```
首先,我们定义了一个 `create_matrix` 函数,用于生成一个 N*N 的二维实数列表。这个函数使用了 Python 内置的 `random` 模块,每个元素的值在 0 到 100 之间随机生成,并保留了两位小数。
接着,在主程序中,我们通过输入获取了 N 的值,调用 `create_matrix` 函数生成了一个 N*N 的二维实数列表。然后,使用 `with open` 语句打开文件 `data1.txt`,并遍历列表中的每个元素,将其转换为字符串形式并写入文件中。每个元素写入一行,保证了每行只有一个数据。
最后,代码会自动关闭文件,完成写入操作。
阅读全文