前提・実現したいこと
def changepass():のコードで defAddCustomer():に保存したリストになる、pw(パスワード)の部分だけ更新を行いたいのですが、変更を行うとすべて変わってしまします。何回も変更を試みましたが、うまくいかなかったため、どなたかご教授いただければ幸いです。
発生している問題・エラーメッセージ
エラーメッセージ
該当のソースコード
python
def AddCustomer():
print("Please register new customer")
user_id = "CUS00" + str(len(open("userinfo.txt", "r").readlines())+1)
user_name = input("\tName: ")
user_birthdate = input("\tBirth Day: ")
user_address= input("\tAddress: ")
user_phonenum = input("\tPhone Number: ")
user_pw = user_name[:3] + user_phonenum[:4]
while True:
Acc_type = input("\tChoice type of acccount(s/c) : ")
if Acc_type == "s":
dep = float(input("How much do you want do deposit (Min :RM100): "))
if dep < 100:
print("Not enough for saving acount")
back = input("Enter 1 to restart and any other key to quiet .....")
if back == "1":
Acc_type = input("\tChoice type of acccount(s/c) : ")
else:
print("Thanks for coming")
break
else:
print("Deposit done successfully")
info = f"{user_id}/{user_pw}/{user_name}/{user_birthdate}/{user_address}/{user_phonenum}/{Acc_type}/{dep}\n"
with open("userinfo.txt", "a") as namefile:
namefile.write(info)
print("Account added succesfully.")
print("User ID and password is:"+ user_id+","+ user_pw+".Please dont forget User ID and password!")
break
elif Acc_type == "c":
dep = float(input("How much do you want do deposit (Min :RM500): "))
if dep < 500:
print("Not enough for current acount")
back = input("Enter 1 to restart and any other key to quiet .....")
if back == "1":
AddCustomer()
else:
print("Thanks for coming")
break
else:
print("Deposit done successfully")
info = f"{user_id}/{user_pw}/{user_name}/{user_birthdate}/{user_address}/{user_phonenum}/{Acc_type}/{dep}\n"
with open("userinfo.txt", "a") as namefile:
namefile.write(info)
print("Account added succesfully.")
print("User ID and password is:" + user_id + "," + user_pw + ".Please dont forget UserID and password!")
ask = input("Press any key to continue....")
break
def changepass(): userid = input('Enter Account ID:') with open('userinfo.txt', 'r') as file1: success = 'no' for rec in file1: reclist = rec.strip().split('/') if reclist[0] == userid: success = 'yes' old_pass = reclist[1] print("Old birthdate is:", reclist[2]) new_pass = input('\nPlease Enter New birthdate: ') reclist[2] = new_pass with open("userinfo.txt", "w") as fh: a = reclist[2] = new_pass fh.write(a) print("Birthdate changed successfully !!!") back = input("Enter 1 to change again or any key to exit....: ") if back == "1": change_info() else: print(" Thanks !!!") else: print("User ID not found !!!") back = input("Enter 1 to restart or any key to exit....: ") if back == "1": change_info() else: print(" Thanks !!!") ### 試したこと ここに問題に対して試したことを記載してください。 ### 補足情報(FW/ツールのバージョンなど) ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/12/11 03:30