我是編碼新手,我對這個問題的說明是:“給定以管道分隔的文件 F1 和 F2,其中 F1 包含具有字段 ACCOUNT NUM|PIN|BALANCE 的帳戶,F(xiàn)2 包含交易指令 COMMAND|AMOUNT|ACCOUNT NUM|PIN,執(zhí)行交易,將結(jié)果存儲回 F1。COMMAND 字段將是 add 或 sub 指示從帳戶中添加或減去。不提供正確 PIN 碼或試圖將帳戶置于零以下的交易應(yīng)被忽略?!蔽业妮敵鍪牵?000|1234|100001020|2222|03000|3344|10002020|1234|90000正確的輸出是:1000|1234|110001020|2222|03000|3344|02020|1234|90000我寫的代碼是:import sysF1= sys.argv[1] F2= sys.argv[2]records=[]with open(F1,'r') as fp: content=fp.readlines() for row in content: recList=row.strip("\n").split('|') records.append(recList)records2=[]with open(F2,'r') as fp: content=fp.readlines() for row in content: recList2=row.strip("\n").split('|') records2.append(recList2)for i in range(len(records)): row=records[i]for i in range(len(records2)): row=records2[i]for row in records and records2: if records[i][1]==records2[i][3]: if records2[i][0]=="add": records[i][2]=int(records[i][2])+int(records2[i][1]) elif records2[i][0]=="sub": if int(records[i][2])>=int(records2[i][1]): records[i][2]=int(records[i][2])-int(records2[i][1]) else: records[i][2]=records[i][2] else: breakprint(records)
添加回答
舉報(bào)
0/150
提交
取消