To jest kod, który napisałem do tej pory, a punktem programu jest odczytanie 20 osób z pliku, a następnie przypisanie im ich atrybutów, a następnie znormalizowanie ich wartości z danych wprowadzonych przez użytkownika.Pobierz obiekt z wartością atrybutu max na liście obiektów
class One:
def __init__(self):
self.attrOne =()
self.attrTwo =()
self.attrThree =()
self.attrFour =()
self.attrFive=()
self.attrSix =()
self.attrSeven =()
self.attrEight =()
self.attrNine =()
class Two:
def __init__(self):
self.allPersons = []
def importFromList(self, filename):
file= open(filename, "rU")
for line in file:
partOfList = line.split()
x = Partner()
x.attrOne = partOfList[0]
x.attrTwo = partOfList[1]
x.attrThree = partOfList[2]
x.attrFour = partOfList[3]
x.attrFive = partOfList[4]
x.attrSix = partOfList[5]
x.attrSeven = partOfList[6]
x.attrEight= partOfList[7]
x.attrNine = partOfList[8]
self.addPerson(x)
file.close()
def addPerson(self, x):
self.allPersons.append(x)
Co Zastanawiam się jak pętla poprzez atrybuty osoby, które są umieszczone w wykazie allPersons, a następnie porównać je z siebie, aby dowiedzieć się wartość max. To, co starałem tak daleko, ale nie mogę zmusić go do pracy
def getMaxValue(self):
o = One()
for eachPartner in self.allPartners:
maxValuesAttrOne = max(O.attrOne))
Wszystkie pomoc będzie mile widziane, i jestem otwarty na nowe rozwiązania, także sobie wyobrazić metoda importFromList nie jest najbardziej skuteczny jeden, więc jeśli masz jakieś zastrzeżenia, jestem gotów słuchać i uczyć się!
Czy istnieje powód, dla którego masz 9 oddzielnych atrybutów o nazwie 'attrOne' do' attrNine' zamiast, powiedzmy, pojedynczy atrybut, który jest listą 9 wartości, czy też odwzorowanie dyktujące nazw 9 na wartości? – abarnert
Ponadto, dlaczego klasa 'One' ma 9 atrybutów wszystkich ustawionych na pustą krotkę, natomiast' Partner' ma 9 atrybutów o tych samych nazwach, z których każda jest ustawiona na łańcuch? To wydaje się być receptą na zamieszanie ... – abarnert
Atrybuty to definicje osoby, na przykład imię, wiek i bogactwo. Rename je przed opublikowaniem tutaj. Czy lepiej jest używać self.name = nazwa zamiast pustej krotki? Co masz na myśli, mówiąc, że mając dyktujące odwzorowanie 9 nazw na wartości, nie przekopaliśmy się na temat korzystania ze słowników w trakcie, który zrobiłem, ale chciałbym, aby był to przykł[email protected] – Filip