Skip to main content
 首页 » 编程设计

python列表复制而不是连接

2025年05月04日11yyy_WW

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 

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

请您参考如下方法:

您使用的不是类属性,而是您偶然定义的全局变量。

return str(user) + " " + str(item) + " " + str(rating) 

应该是这样的

return str(self.user) + " " + str(self.item) + " " + str(self.rating)