Python编程问题:如何将一个二维数列写入到一个已经存在的csv文件中?要求:从二维数列的第二个元素读取并写入csv,且写入的内容不能付款之前csv文件中的内容?
时间: 2024-04-13 17:30:57 浏览: 106
要将一个二维数组写入到一个已经存在的 CSV 文件中,可以使用 Python 的 `csv` 模块和 `pandas` 库。
下面是一个示例代码:
```python
import csv
import pandas as pd
data = [['John', '25', 'USA'],
['Alice', '30', 'Canada'],
['Bob', '20', 'Australia']]
filename = 'data.csv'
# 读取已存在的 CSV 文件
existing_data = pd.read_csv(filename)
# 从二维数组的第二个元素开始读取并写入 CSV 文件
new_data = [row[1:] for row in data]
# 将新数据追加到已存在的数据后面
merged_data = existing_data.append(pd.DataFrame(new_data, columns=existing_data.columns), ignore_index=True)
# 将合并后的数据写入 CSV 文件
merged_data.to_csv(filename, index=False)
print(f"数据已成功写入到 {filename} 文件中。")
```
在上述代码中,我们首先使用 `pd.read_csv()` 方法读取已存在的 CSV 文件,并将其存储在 `existing_data` 变量中。
然后,我们使用列表推导式从二维数组的第二个元素开始读取,并存储在 `new_data` 变量中。
接下来,我们使用 `append()` 方法将 `new_data` 追加到 `existing_data` 后面,得到一个合并后的数据框 `merged_data`。
最后,我们使用 `to_csv()` 方法将合并后的数据写入到原始的 CSV 文件中,并使用 `index=False` 参数禁止写入索引列。
当你运行上述代码后,合并后的数据将会写入到原始的 CSV 文件中。
请注意,这种方法要求原始的 CSV 文件有列名,并且新数据的列与原始数据的列一致。如果列名不一致,可以根据实际情况进行适当的调整。
阅读全文