好的,所以我正在尝试从用户那里获得输入并将其存储在'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文件。 但是,如果我再次运行代码并输入不同的数据,它会再次运行,但会完全替换先前输入的数据。如何使新数据存储在另一行?