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

时间:2018-09-20 05:28:31

标签: python python-3.x

我是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])

你们是否知道如何使程序添加新数据而不是替换新数据?

2 个答案:

答案 0 :(得分:1)

当您以写入模式(即open('file.txt', 'w'))打开文件时,在添加内容之前会清除内容。解决您的问题的方法是在附加模式下打开csv文件:

def writein():
    with open('employee data.csv', 'a') as employeeData:
                             #      ^
                             # a for append

答案 1 :(得分:0)

使用以下代码 with open('employee data.csv', 'a')

参数“ a”指示附加。