-
test or code is wrong?
I would like to give some feedback about ...
From: https://checkio.org/mission/friends/solve/
class Friends: def init(self, connections): print(connections); self.connections = connections;
def add(self, connection): if connection in self.connections: return False else: self.connections = list(self.connections); self.connections.append(connection); return True def remove(self, connection): deleted = False; for elem in self.connections: if str(elem) == str(connection): print(type(self.connections)); print("test1:"); print(self.connections); self.connections.remove(elem); print("test2:"); print(self.connections); deleted = True; return deleted def names(self): result = [] for elem in self.connections: for x in elem: result.append(x) result = set(result); print("result:"); print(result); return result def connected(self, name): new_list = []; new_list2 = []; print("name: " + name); check = False; for elem in self.connections: for item in elem: item_buffer = item; print("item: " + item); if check == True: new_list2.append(item); check = False; #item_buffer.append(item); if item == name: print("same!"); #new_list2.append(item_buffer); check = True; new_list.append(item); item_buffer = (); print("new_list:"); print(new_list); print("new_list2:"); print(new_list2); print(set(new_list2)); return set(new_list2);
if name == 'main': #These "asserts" using only for self-checking and not necessary for auto-testing letterfriends = Friends(({"a", "b"}, {"b", "c"}, {"c", "a"}, {"a", "c"})) digitfriends = Friends([{"1", "2"}, {"3", "1"}]) assert letterfriends.add({"c", "d"}) is True, "Add" assert letterfriends.add({"c", "d"}) is False, "Add again" assert letterfriends.remove({"c", "d"}) is True, "Remove" assert digitfriends.remove({"c", "d"}) is False, "Remove non exists" assert letterfriends.names() == {"a", "b", "c"}, "Names" assert letterfriends.connected("d") == set(), "Non connected name" assert letter_friends.connected("a") == {"b", "c"}, "Connected name"
HTTP_USER_AGENT:
Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:47.0) Gecko/20100101 Firefox/47.0
Please check if it is your test or my code, I have no idea why the "remove()" cannot be used?
All the best
AttributeError: 'tuple' object has no attribute 'remove', remove, 22, , 7 f = Friends(({"nikola", "sophia"}, {"stephen", "robot"}, {"sophia", "pilot"})) f.remove({"stephen", "robot"}) f.names()