Python 在文本文件中查找指定字符串,然后删除

Python 在文本文件中查找指定字符串,然后删除,python,Python,我正在尝试制作一个程序,用户可以向文本文件中添加用户名和密码,然后还可以删除文本文件中的用户名和密码。目前我不知道如何删除一行代码并保留相同的文本文件,唯一的删除方法是让用户输入他们想要删除的用户名,然后删除密码和用户名。到目前为止,我的代码:(在此代码中,我已使用户名和密码检查功能正常工作。)感谢您的帮助:) 重新导入 def UsernameChecking(): 打印(“\n您的用户名不能有空格,长度必须少于20个字符”) ab=假 虽然不是(ab): 全局用户名 用户名=输入(“请输入您

我正在尝试制作一个程序,用户可以向文本文件中添加用户名和密码,然后还可以删除文本文件中的用户名和密码。目前我不知道如何删除一行代码并保留相同的文本文件,唯一的删除方法是让用户输入他们想要删除的用户名,然后删除密码和用户名。到目前为止,我的代码:(在此代码中,我已使用户名和密码检查功能正常工作。)感谢您的帮助:)

重新导入
def UsernameChecking():
打印(“\n您的用户名不能有空格,长度必须少于20个字符”)
ab=假
虽然不是(ab):
全局用户名
用户名=输入(“请输入您想要的用户名:\n”)
如果len(用户名)>20:
打印(“您的用户名长度必须小于20个字符”)
elif重新搜索(“[]”,用户名):
打印(“用户名中不允许有任何空格”)
其他:
打印(“您的用户名已被接受!”)
ab=真
def PasswordChecking():
打印(“\n您的密码必须至少为6个字符。\n它也必须为12个或更少字符”)
ac=假
虽然不是(ac):
全局密码
密码=输入(“请输入您希望的密码:\n”)
如果len(密码)<6:
打印(“您的密码长度必须为6个或更多字符”)
elif len(密码)>12:
打印(“您的密码长度必须小于等于12个字符”)
其他:
打印(“您的密码已被接受!”)
ac=真
def CreateFile():
f=打开(“UsernameDatabase.txt”,“w”)
f、 关闭()
def AddingData():
f=打开(“UsernameDatabase.txt”,“a”)
f、 写入(“\n\n用户名:”+(用户名))
f、 写入(“\n密码:”+(密码))
f、 close()#关闭文件
def DeletingData():
DeleteRequest=input(“要删除的用户名和密码。请输入用户名:\n”)
f=打开(“UsernameDatabase.txt”,“r+”)
def RunningProgram():
zz=假
虽然不是(zz):
Q=输入(“是否要将用户名和密码添加到文件?\n”)
如果Q==“Y”:
用户名检查()
密码检查()
添加数据()
其他:
zz=真
运行程序()
删除数据()

从文件中删除用户名和密码:

data = [i.strip("\n").split(":") for i in open("UsernameDatabase.txt")]

user_name_to_delete = "something"

password_to_delete = "something"

f = open('UsernameDatabase.txt', 'w')
for entry in data:
    if entry[-1] != user_name_to_delete or entry[-1] != password_to_delete:
        f.write(':'.join(entry)+'\n')

f.close()

要从文件中删除用户名和密码,请执行以下操作:

data = [i.strip("\n").split(":") for i in open("UsernameDatabase.txt")]

user_name_to_delete = "something"

password_to_delete = "something"

f = open('UsernameDatabase.txt', 'w')
for entry in data:
    if entry[-1] != user_name_to_delete or entry[-1] != password_to_delete:
        f.write(':'.join(entry)+'\n')

f.close()

当我用这段代码运行它时,它会删除所有用户名,而不仅仅是我想要的用户名delete@Matt你能发布一个输入文件的示例吗?@Ajaz1234别担心,我想我已经修复了。当我用这个代码运行它时,它删除了所有用户名,而不仅仅是我想要的用户名delete@Matt你能发布你输入文件的样本吗?@Ajaz1234别担心,我我想我已经修好了