Python 写入文本文件格式
我的任务是制作一个简单的任务管理器/待办事项列表。此代码块只是处理登录、新用户名和密码注册的程序的一部分。当用户注册时,输入被写入名为Python 写入文本文件格式,python,python-3.x,formatting,Python,Python 3.x,Formatting,我的任务是制作一个简单的任务管理器/待办事项列表。此代码块只是处理登录、新用户名和密码注册的程序的一部分。当用户注册时,输入被写入名为user.txt的文本文件中 每当它写入文本文件时,它都是这样写的:(['admin','adm1n']) 相反,它应该这样写:admin,adm1n user_file = open("user.txt","r+") login = False while login == False: new = input(&quo
user.txt的文本文件中
每当它写入文本文件时,它都是这样写的:(['admin','adm1n'])
相反,它应该这样写:admin,adm1n
user_file = open("user.txt","r+")
login = False
while login == False:
new = input("Are you a new user? Y/N:\n").lower()
if new == "y":
print("Please register a new username and password:\n")
new_user1 = input("Please enter a new username:\n").split()
new_pass1 = input("Please enter a new password:\n").split()
new_user2 = input("Please confirm your username:\n").split()
new_pass2 = input("Please confirm your password:\n").split()
user_pass1 = new_user1 , new_pass1
user_pass2 = new_user2 , new_pass2
if user_pass1 == user_pass2:
user_file.write(f"{user_pass2},")
user_file.seek(0)
break
elif new == "n":
username = input("Enter your username:\n")
password = input("Enter your password:\n")
valid_user = username
valid_password = password
for line in user_file:
valid_user, valid_password = line.split(", ")
if username == valid_user and password == valid_password:
login = True
if login == False:
print("Incorrect details! Please enter a valid username and password")
我做错了什么?我肯定这是件小事。
提前谢谢 因为您正在那里创建一个元组。相反,您应该创建一个字符串。这是您的代码的正确版本
user_pass1 = new_user1 + ',' + new_pass1
user_pass2 = new_user2 + ',' + new_pass2
if user_pass1 == user_pass2:
user_file.write(f"{user_pass2},")
user_file.seek(0)
break
谢谢大家的反馈
我设法弄明白了。我给它添加了一个索引来打印字符串,它工作得很好
user_pass2 = new_user2 , new_pass2
if user_pass1 == user_pass2:
#Writes username and password to text file in format requested.
user_file.write(f'\n{user_pass2[0]}, {user_pass2[1]}')
如果您希望以非标准方式打印序列,则需要告诉打印
该方式是什么。谢谢,但它引入了一个新错误,只能将列表(而不是“str”)连接到列表
。我会继续尝试你应该从输入中删除split()