Я уверен, что вы видите это много, но просто хотели предупредить вас, что я все еще очень новичок в кодировании в целом и многому научился. Я пытаюсь научить себя, работая над личным проектом и youtube всякий раз, когда у меня есть время.Пояснение для ошибки re.split()?
Длинная версия: я всегда получаю сообщение об ошибке при использовании функции split, но я все равно получаю значение. По сути, что моя функция должна делать, это взять угол или подшипник, который находится в градусах ° мин. Секунд "или, например," N 38 ° 43'23 \ "E" до десятичного числа. Я использовал подшипники менее 90 градусов, чтобы использовать индексирование, чтобы найти числа в строке для преобразования угла. Однако, если бы угол не был несущим, я не мог придумать, как определить, сколько десятков мест выровняет градусы, поэтому я попытался разбить его на символ степени. Однако, когда он делает это, он возвращает ошибку, говорящую, что split() требует непустого соответствия шаблону. Что это значит? Код все еще работает, но всегда возвращает эту ошибку.
Краткая версия: Вот мой код:
def decimal(x): # converts degrees-minutes-seconds to decimal
dms = list(x)
if dms[0] == 'N' or dms[0] == 'S':
degrees = ((int(dms[2]) * 10) + int(dms[3]))
minutes = ((int(dms[-8]) * 10) + int(dms[-7]))/60
seconds = ((int(dms[-5]) * 10) + int(dms[-4]))/3600
else:
placeholder = re.split(r'\u00b0*', x)
degrees = int(placeholder[0])
minutes = ((int(dms[-6]) * 10) + int(dms[-5]))/60
seconds = ((int(dms[-3]) * 10) + int(dms[-2]))/3600
return degrees + minutes + seconds
Когда я бегу, я получаю десятичное число, но я также получаю:
FutureWarning: split() requires a non-empty pattern match.
return _compile(pattern, flags).split(string, maxsplit)
Я посмотрел на другие вопросы, вывешенные о эта ошибка, но не было ответов, которые объясняли, что делать, чтобы избежать этого, или то, что на самом деле означает ошибка. Спасибо за любую помощь. Также любые советы или исправления, которые вы видите, будут очень благодарны!
Благодарим вас за этот совет, все проверено! – quesadyllan
@quesadyllan Я рад, что это так, спасибо за обратную связь :) –