0
Вопрос, который я должен был ответить было:добавляя все значения одного списка в другой
Реализовать функцию с подписью
def expand_one_or(course_lists):
Эта функция принимает список списков строк course_lists и изменяет его следующим образом:
- Он находит первый список (назовем его
lis
) вcourse_lists
в котором происходит"/"
.- Затем он находит координату первого
"/"
вlis
(скажемi
).- Если
lis[i-1]
иlis[i+1]
существуют и оба курса,lis
заменяются вcourse_lists
с двумя новыми списками: список идентичнойlis
но сlis[i]
иlis[i+1]
удалены, и список идентиченlis
но сlis[i]
иlis[i-1]
удалены.- В противном случае все, что происходит, это то, что
lis[i]
удален сlis
.
Код я написал для этого вопроса:
def get_course_details(course_description):
beg_1 = "<A Name="
end_1 = "></A>"
for i in course_description:
course_desc1 = [course_description[i] for i in course_description]
course_desc2 = [course_description[i] for i in course_description]
course_desc1[i] = [i].replace('<a name=','<A Name=')
course_desc2[i] = course_description[i].replace('></a>','></A>')
x1 = course_desc1.find(beg_1)
y1 = course_desc2.find(end_1)
course_code = course_description[x1 + len(beg_1):y1]
course_code = course_description.replace('"','')
beg_2 = "Prerequisite:"
end_2 = "<br>"
x2 = course_description.find(beg_2)
y2_temp = course_description[x2:]
y2 = y2_temp.replace("<BR>", "<br>").find(end_2)
prerequisites = y2_temp[:y2 + 1]
course_details = []
course_details.extend([course_code, prerequisites])
return course_details
Однако я получаю ошибку
list indices must be integers, not str
Я не знаю, как это исправить.
Нет, питонический путь было бы не пытаться индексировать с 'i', а просто использовать' i' * напрямую *. Или используйте 'enumerate()', чтобы получить как индекс, так и объект. –
Кроме того, есть много других проблем в коде, которые упадут, как только это конкретное исключение будет разрешено. –
Подождите, что еще не так с кодом? –