Невозможно записать информацию о новой учетной записи в файл csv
Работаю над созданием менеджера паролей для школьного проекта, и у меня возникают проблемы с добавлением информации о новой учетной записи в мой файл password_manager.csv. Информация извлекается из другого файла при вводе и успешно печатается, но когда я пытаюсь записать ее в файл csv, я получаю ошибки.
import csv
def createNewAccount(appName,userEmail,userName,userPassword):
data = [appName,userEmail,userName,userPassword]
print(data)
with open('password_manager.csv','a') as csv_file:
csv_writer = csv_file.write(csv_file, delimiter = '\t')
csv_file.writerow(data)
2 ответа
Я могу это проверить, потому что вы не сказали, какие именно ошибки вы получаете (что всегда следует делать, задавая здесь вопросы). Тем не менее, мне кажется, что вы не используете
csv
модуль правильно - см. csv.writer
документация, содержащая пример кода.
Проблема, которую я вижу в вашем коде, исправлена ниже:
import csv
def createNewAccount(appName, userEmail, userName, userPassword):
data = [appName, userEmail, userName, userPassword]
print(data)
with open('password_manager.csv', 'a', newline='') as csv_file:
csv_writer = csv.writer(csv_file, delimiter='\t')
csv_writer.writerow(data)
if __name__ == '__main__':
createNewAccount('appName1', 'userEmail1', 'userName1', 'userPassword1')
createNewAccount('appName2', 'userEmail2', 'userName2', 'userPassword2')
Попробуйте следующее:
import csv
from csv import writer
def createNewAccount(appName,userEmail,userName,userPassword):
data = [appName,userEmail,userName,userPassword]
print(data)
with open('password_manager.csv','a') as csv_file:
csv_writer = writer(csv_file, delimiter = '\t')
csv_writer.writerow(data)