gpt4 book ai didi

python - 将变量与 txt 中的行匹配并删除行时出现问题

转载 作者:太空宇宙 更新时间:2023-11-03 20:47:09 25 4
gpt4 key购买 nike

我在将变量与 txt 中的行匹配以及删除这些行时遇到问题。

我目前正在执行一个酒店房间预订程序,但在从文本文件中删除预订时遇到问题。

这就是我的文本文件中的行的格式:

名字 1、电话号码 1 和电子邮件 1 链接到输入框

jeff;jeff@gmail.com;123123123;2019-06-09;2019-06-10;Single Room
def edit_details(self,controller):

f = open("Bookings.txt")
lines = f.readlines()
f.close()
x = -1
for i in lines:
x += 1
data = lines[x]
first_name1 = str(controller.editName.get())
phonenumber1 = str(controller.editPhone.get())
email1 = str(controller.editEmail.get())

checkfirst_name, checkemail, checkphone_num, checkclock_in_date, checkclock_out_date, checkroom = map(str, data.split(";"))

if checkfirst_name.upper() == first_name1.upper() and checkemail.upper() == email1.upper() and checkphone_num == phonenumber1:
controller.roomName.set(checkfirst_name)
controller.roomEmail.set(checkemail)
controller.roomPhone.set(checkphone_num)
controller.roomCheckin.set(checkclock_in_date)
controller.roomCheckout.set(checkclock_out_date)
controller.roomSelect.set(checkroom)

print(controller.roomName.get())
print(controller.roomSelect.get())

controller.show_frame("cancelBooking")
break

elif x > len(lines) - int(2):
messagebox.showerror("Error", "Please Enter Valid Details")
break

我让用户输入他们的详细信息以向我提供变量,但我不知道如何将这些变量与文本文件中的行匹配以删除预订。

我是否必须格式化这些变量以匹配该行?这是我尝试过的,但它删除了我文件中的最后一行

line_to_match = ';'.join([controller.roomName.get(),controller.roomEmail.get(),controller.roomPhone.get()])
print(line_to_match)

with open("Bookings.txt", "r+") as f:
line = f.readlines()
f.seek(0)
for i in line:
if i.startswith(line_to_match):
f.write(i)
f.truncate()

最佳答案

我在这里添加了伪代码。您可以使用 ; 连接变量并验证该行是否以这些详细信息开头,如下所示。

first_name1, phonenumber1, email1 = 'jeff', 'jeff@gmail.com', '123123123'

line_to_match = ';'.join([first_name1, email1, phonenumber1])

for i in line:
...
if i.startswith(line_to_match):
# Add your removal code here
...

关于python - 将变量与 txt 中的行匹配并删除行时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56514916/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com