python列表重复而不是连接

jay*_*ynp 1 python

class Rating():
    def __init__(self, user, item, rating):
        self.user = user
        self.item = item
        self.rating = rating

    def __str__(self):
        return str(user) + " " + str(item) + " " + str(rating)

    def __repr__(self):
        return str(user) + " " + str(item) + " " + str(rating)


data = open('data.dat').readlines()
records = ()

for i in data:
    user, item, rating = i.split()
    r = Rating(user, item, rating)
    records += (r,)
    print records
Run Code Online (Sandbox Code Playgroud)

data = [A, B, C],我希望records(<Record> A, <Record> B, <Record> C).但它包含(<Record> C, <Record> C, <Record> C)

Wes*_*sie 7

您没有使用类属性,而是使用偶然定义的全局变量.

return str(user) + " " + str(item) + " " + str(rating)
Run Code Online (Sandbox Code Playgroud)

应该是这样的

return str(self.user) + " " + str(self.item) + " " + str(self.rating)
Run Code Online (Sandbox Code Playgroud)