У меня есть 1 набор из класса People и список из наборов Town, который включает ID людей, которые в настоящее время добавлены в этот список.Я пытаюсь сравнить набор взаимных и посмотреть, есть ли какие-либо из этих идентификаторов в списке PHere.Затем, как только это будет сделано, чтобы предупредить 2 общих друзей, что они находятся в одном и том же городе, а затем еще раз предупредить, когда из них «уйдет»
def alertMutual(self):
return
def checkMutual(self):
for i in len(self.Town.PHere):
x = Town.findPer(self, self.mutualf)
if x in self.mutualf: self.alertMutual()
else:return
Я застрял в процессе оповещения и не уверенэто работает так, как я думаю.
class People:
'''People to make friendships, have a name, and a unique ID'''
numsTimes = 0 ###Class variable for ID
def __init__(self, name="anon"):
if name == "anon":
self.myname = makeRName() ####Random Name
else:
self.myname = name
self.friends = {} ####Empty List so people will be able to make friends
self.mutualf = {}
def makeMutual(self, other):
mutual = self.friends.intersection(other.friends)
self.mutual.add(mutual)
self.friends.remove(mutual)
class Town:
'''To hold people, have a name, and a unique ID'''
numsTimes = 0 # Class variable for ID
def __init__(self, tname="anon", maxPpl=-1):
self.PHere = [[]] ####Hold People
self.tID = Town.numsTimes ###Unique ID
Town.numsTimes += 1
if self.Maxppl == -1:
self.Maxppl = randint(2, 15) ####Each town gets individual maximum of People to hold
else:
self.Maxppl = MaxPpl
Я ожидаю, что, если они будут в обоих источниках информации, они будут предупреждать друг друга, как только они окажутся в одном городе.Затем, когда один из них ушел, снова предупредите друг друга.