Python\ csv.writer 删除以前的数据而不是向文件添加新数据

我是 python 的初学者,所以你可以认为我在问一个愚蠢的问题,但我真的不明白为什么我的函数是删除 csvfile 中以前的数据而不是在这个文件中添加新的数据。这就是它的样子:


def writein():

    with open('employee data.csv', 'w') as employeeData:

        writeby = csv.writer(employeeData, delimiter = ',')

        writeNEN = input('Add name of new emp: \n')

        writeNESN = input('Add surname of new emp: \n')

        writeNEP = input('Add position of new emp: \n')

        writeNEBD = input('Add date of birth of new emp: \n')

        writeby.writerow([writeNEN, writeNESN, writeNEP, writeNEBD])

你们知道如何让程序添加新数据而不是替换它吗?


慕斯王
浏览 205回答 2
2回答

jeck猫

当您以写模式(即open('file.txt', 'w'))打开文件时,内容会在添加内容之前被清除。解决您的问题的方法是以追加模式打开 csv 文件:def writein():    with open('employee data.csv', 'a') as employeeData:                             #      ^                             # a for append
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python