python如何将数组存到txt指定行中并读取
时间: 2024-05-15 22:19:01 浏览: 61
您可以使用Python内置的文件操作函数来实现将数组存储到txt文件中指定行,以及读取txt文件中指定行的操作。具体的实现方式如下所示:
将数组存储到txt文件中指定行:
```
import numpy as np
array = np.array([1, 2, 3, 4, 5]) # 要存储的数组
line_num = 3 # 要存储到的行数
with open('text.txt', 'r+') as f:
lines = f.readlines() # 读取所有行
lines.insert(line_num - 1, str(array.tolist()) + '\n') # 在指定行插入数据
f.seek(0) # 指针移动到文件开头
f.writelines(lines) # 写入数据
```
上述代码中,我们首先定义了要存储的数组 `array` 和要存储到的行数 `line_num`。然后使用 `with` 关键字打开文件,并读取所有行。接着,我们使用 `insert()` 函数将数组转换为字符串后插入到指定行中。最后使用 `seek()` 函数将指针移动到文件开头,并使用 `writelines()` 函数将修改后的数据写入文件。
读取txt文件中指定行的数据:
```
import numpy as np
line_num = 3 # 要读取的行数
with open('text.txt', 'r') as f:
lines = f.readlines() # 读取所有行
array_str = lines[line_num - 1].strip() # 获取指定行的数据
array = np.array(eval(array_str)) # 将字符串转换为数组
print(array)
```
上述代码中,我们定义了要读取的行数 `line_num`,然后使用 `with` 关键字打开文件,读取所有行后获取指定行的数据。由于数组数据被存储为字符串,因此我们需要使用 `eval()` 函数将其转换为数组。最后,我们将转换后的数组输出。
阅读全文