因为“\”字符而出错

2024-06-28 19:27:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我得到:

"unexpected character after line continuation character"

我应该如何写line = line.strip("\xef\xbb\n\xbf")行而不出现错误。你知道吗

dataFile = open("data.txt","r")

updateFile = open("update","r")
newFile = open("newdata","w")

dataMatrix = []
updateMatrix = []

cardList = []

for line in dataFile:
    line = line.strip("\xef\xbb\n\xbf")
    tmp = line.split(" ")
    cardNum = tmp[0]
    cardName = " ".join(tmp[1:-2])
    cardDate = tmp[-2]
    cardSum = tmp[-1]
    dataMatrix.append([cardNum,cardName,cardDate,cardSum])
    cardList.append(cardNum)

i = 0

updateDate = ""

for line in updateFile:
    line = line.strip("\xef\xbb\n\xbf")

    if i==0 : updateDate = line; i=1; continue;

    tmp = line.split(" ")
    upNum = tmp[0]
    upName = " ".join(tmp[1:-1])
    upSum = tmp[-1]
    updateMatrix.append([upNum,upName,upSum])

for row in updateMatrix:
    if row[0] in cardList: 
        index = cardList.index(row[0])
        plus = row[2]

        if plus[0] == "+": 
            plus = int(plus[1:]) 
        else:
            plus = -int(plus[1:])

        curSum = int(dataMatrix[index][3])
        newSum = curSum+plus
        dataMatrix[index][3] = newSum
        dataMatrix[index][2] = updateDate
        # dataMatrix[index][]

    else:
        dataMatrix.append([row[0],row[1],updateDate,row[2][1:]])

dataMatrix.sort(key=lambda row: row[0])

for row in dataMatrix:
    print row
    newFile.write(" ".join(str(a) for a in row) + "\n")

Tags: inforindexlineplustmprowstrip