Я создаю программу, соответствующую конкретному году Олимпийскому местоположению.Отсутствующие позиционные аргументы? (python help)
I.e. если пользователь вводит год, он находит место, где Олимпийские игры состоялись в том же году (1904 - Афины, Греция ..) и т.д.
Он продолжает говорить мне, что я есть позиционные ошибки в своем коде, однако:
Traceback (most recent call last):
File "<pyshell#29>", line 1, in <module> findLocation()
TypeError: findLocation() missing 3 required positional arguments:
'yearList', 'locList', and 'year'
Вот моя программа:
def getData():
print("All the events")
print("")
yearList = []
locList = []
readFile = open('olympics.txt', 'r')
for line in readFile:
year, loc = line.split("\t")
loc = loc.replace("\n", "")
yearList.append(year)
locList.append(loc)
return yearList,locList
def findLocation(yearList, locList, year):
i=0
location=""
while i<len(locList):
if yearList[i] == year:
year = yearList[i]
elif yearList[i] !=year:
return print ("That was incorrect")
i += 1
return location
Получение данных успешно работает, но моя findLocation
функция, кажется, в неисправном состоянии и я не знаю, как это исправить.
Вот отрывок из текстового файла, содержащего Олимпийские события.
1896 Athens, Greece
1900 Paris, France
1904 St. Louis, Missouri USA
1906 Athens, Greece*
1908 London, England
1912 Stockholm, Sweden
1916 Not held**
1920 Antwerp, Belgium
Может кто-нибудь помочь мне, пожалуйста?
'my findLocation функция, кажется, из-за удара' не очень помогает :( – thefourtheye
Что вы имеете в виду позиционные ошибки? Можете ли вы предоставить сообщение об ошибке (stacktrace)? –
Traceback (самый последний вызов последнего): Файл "", строка 1, в findLocation() TypeError: findLocation() не хватает 3 необходимых позиционных аргументов: 'yearList', 'locList' и 'год' –