Я новичок в Python и наткнулся на ошибку. Я пытаюсь создать программу, которая будет использовать имя пользователя и пароль, сделанные пользователем, записать их в списки и записать эти списки в файлы. Вот некоторые из моего кода: Это та часть, где пользователь создает имя пользователя &.Как вы пишете список в файл в Python?
userName=input('Please enter a username')
password=input('Please enter a password')
password2=input('Please re-enter your password')
if password==password2:
print('Your passwords match.')
while password!=password2:
password2=input('Sorry. Your passwords did not match. Please try again')
if password==password2:
print('Your passwords match')
Мой код работает отлично до этого момента, когда я получаю сообщение об ошибке:
invalid file: <_io.TextIOWrapper name='usernameList.txt' mode='wt' encoding='cp1252'>.
я не уверен, почему возвращается эта ошибка.
if password==password2:
usernames=[]
usernameFile=open('usernameList.txt', 'wt')
with open(usernameFile, 'wb') as f:
pickle.dump(usernames,f)
userNames.append(userName)
usernameFile.close()
passwords=[]
passwordFile=open('passwordList.txt', 'wt')
with open(passwordFile, 'wb') as f:
pickle.dump(passwords,f)
passwords.append(password)
passwordFile.close()
Есть ли способ исправить ошибку или другой способ записать списки в файл? Благодаря
возможно дубликат [Python: Написали список в файл] (http://stackoverflow.com/questions/899103/python-write-a-list-to-a-file) – Andy
Кроме того, ваш только повторная попытка 'password2'. Что делать, если пользователь набрал пароль '1' неправильно? – muddyfish
Вы открываете файл одновременно в двух режимах 'wt' и' wb', я думаю, 'wb' является обязательным здесь. – ZdaR