如何从python中删除新数据替换csv文件中的旧数据?

时间:2017-11-05 12:51:41

标签: python csv dictionary export-to-csv

好的,所以我正在尝试从用户那里获得输入并将其存储在'username'和'password'标题下的csv文件中(我使用的是microsoft excel)。我已经使用DictWriter命令成功完成了这项工作,但是当我再次尝试使用不同的数据时,它只是替换了以前的数据。简而言之,我想找到一种方法将新数据放在同一标题下的新行中。

我的代码如下:

name = input("enter you name")
age = input("enter your age in years")
username = name[:3] + age
print("your unique username is", username)
while True:
    password = input("enter a password over 6 characters")
    count = 0
    for letter in password:
        count = count + 1
    if count < 6:
        print("password too short, please enter another")
    else:
        break


import csv

with open('usernames.csv', 'w', newline='') as csvfile:
    fieldnames = ['username', 'password']
    writer = csv.DictWriter(csvfile, fieldnames=fieldnames)

    writer.writeheader()
    writer.writerow({'username': username, 'password': password})

当我运行它时,它可以工作:

============ RESTART: /Users/Hesta/Desktop/python csv/username.py ============
enter you namejohn smith
enter your age in years19
your unique username is joh19
enter a password over 6 characterslongpassword
>>> 

此数据会在标题'username'和'password'下发送到csv文件。 但是,如果我再次运行代码并输入不同的数据,它会再次运行,但会完全替换先前输入的数据。如何使新数据存储在另一行?

0 个答案:

没有答案