如何在csv文件中写入/覆盖

时间:2019-11-27 20:00:45

标签: python csv python-3.7

因此,我创建了此数据库,并尝试输入该人的ID,以便更新该人的手术。对编码和python来说是新手,但不确定如何获得它,因为前半部分可以正常工作,但是后半部分只会删除整个数据库。这很困难,因为我知道如何添加行,但不确定如何编辑/将某些单词添加到特定行。任何帮助将不胜感激。

import csv

id = input('Enter the ID of the person which surgery you want to edit: ')
with open('Treatment.csv', 'r') as csv_file:
    csv_reader = csv.reader(csv_file)
    for col in csv_reader:
        for row in col:
            if row == id:
                print(col)

surgeryedit = input('Update Surgery: ')
with open('Treatment', 'w') as new_file:
    csv_writer = csv.writer(new_file)
    txt = surgeryedit
    next(new_file)
    for col in csv_reader:
        for row in col:
            if id == row:
                csv_writer.write(row[2],txt)

Here's the database

1 个答案:

答案 0 :(得分:0)

对于维护CSV文件,Python中的数据我建议您使用 Pandas 库。当您熟悉Pandas时,您将看到该库多么有用。例如,这是您可以在CSV数据中编辑某些字段的方法:

import pandas as pd
data = pd.read.csv("Treatment.csv")

然后创建一个pandas.DataFrame对象,以快速编辑数据:

df = pd.DataFrame(data)

现在,只需使用切片和索引,您就可以轻松地从数据中获取任何列,行或字段。 例如如何替换任何人的数据:

df[id[3]] = new_person_data

有许多写得很好的教程和文档,所以在这里我不会向您解释我写的内容,我这样做是为了向您展示Pandas的实用性以及使用它访问数据的速度。我强烈建议同时学习NumPy和Pandas,作为使用Python进行数据管理的基础。